编写程序其功能是:任意输入20个整数到一维数组中,计算(1)正数的个数和正数的和(2)负数同正数.我是这样做的 但是算出来的结果是错误的.我是新手 解释最好明了一点 我怕我不理解.#inclu

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 20:45:56
编写程序其功能是:任意输入20个整数到一维数组中,计算(1)正数的个数和正数的和(2)负数同正数.我是这样做的 但是算出来的结果是错误的.我是新手 解释最好明了一点 我怕我不理解.#inclu

编写程序其功能是:任意输入20个整数到一维数组中,计算(1)正数的个数和正数的和(2)负数同正数.我是这样做的 但是算出来的结果是错误的.我是新手 解释最好明了一点 我怕我不理解.#inclu
编写程序其功能是:任意输入20个整数到一维数组中,计算(1)正数的个数和正数的和(2)负数同正数.
我是这样做的 但是算出来的结果是错误的.我是新手 解释最好明了一点 我怕我不理解.
#include
void main()
{
int q[20],i=0,a,b,c,sum1,sum2;
a=b=c=0;sum1=0,sum2=0;
printf("输入20个整数\n");
for(i=0;i

编写程序其功能是:任意输入20个整数到一维数组中,计算(1)正数的个数和正数的和(2)负数同正数.我是这样做的 但是算出来的结果是错误的.我是新手 解释最好明了一点 我怕我不理解.#inclu
第一,你的第二循环中,a、b、c在第一次计数后,又重复了一次,所以不对.
第二,你没有对sum1,sum2累加,所以完成循环后,sum1,sum2存放的是最后一次判断的数;
同时,正负数和零的计数、累计等都可以在一个循环体内完成,不需要分在两个循环里分别进行,所以程序可以简化一下:

#include
void main()
{
int q[20],i=0,a,b,c,sum1,sum2;
a=b=c=0;sum1=0,sum2=0;
printf("输入20个整数\n");
for(i=0;i