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

第一,你的第二循环中,a、b、c在第一次计数后,又重复了一次,所以不对.第二,你没有对sum1,sum2累加,所以完成循环后,sum1,sum2存放的是最后一次判断的数;同时,正负数和零的计数、累计等都可以在一个循环体内完成,不需...