如何处理与舍友的关系:这个程序错在哪?? C语言

来源:百度文库 编辑:神马品牌网 时间:2024/05/05 09:06:35
#include <stdio.h>
main()
{
int a,sum,sun;
for (n=1;n<10;n++)
{
a=getchar();
if (a>0)
sum+=a;
else
sun+=a;
}
f=sum+sun;
printf("整数和为:%d\n",sum);
printf("负数和为:%d\n",sun);
printf("10个数的和为:%d\n",f);
}
定义n后```调试的结果是 只能输入3个数``
结果显示``整数的和还有负数的和``都是-的``错在哪呢?

#include <stdio.h>
main()
{
int a,sum,sun;
int n,f;
for (n=1;n<10;n++)
{
a=getchar();
if (a>0)
sum+=a;
else
sun+=a;
}
f=sum+sun;
printf("整数和为:%d\n",sum);
printf("负数和为:%d\n",sun);
printf("10个数的和为:%d\n",f);
}

其中 n 和 f 没有定义

变量f、n没有声明。
另外,应对输入的字符进行判断,如果是数字转换为整数类型后累加,如果不是数字应丢弃或提示错误重新输入,否则结果就不正确了。

不能用getchar
你的a是int类型的 所以该用
scanf("%d",&a);
并且要定义n

n好像没定义吧