伟昌1.2铝材多少一平方:C语言输出问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/30 02:21:13
程序如下:
main()
{int num1,num2,num3,sum;
float aver;
printf("Please input three numbers:");
scanf("%d,%d,%d",&num1,&num2,&num3); /*输入三个整数*/
sum=num1+num2+num3; /*求累计和*/
aver=sum/3.0; /*求平均值*/
printf("num1=%d,num2=%d,num3=%d\n",num1,num2,num3);
printf("sum=%d,aver=%7.2f\n",sum,aver);
}

运行结果:
please input three numbers:52 23 25
num1=52,num2=0,num3=835
sum=887,aver=295.666656

为什么输出结果和输入的不同?
是什么问题啊?
输入数据时加,也不行的,输出结果只有前两个数是对的,第三个数是错的

问题在于你的分隔符是",",而你在输入的时候是用的空格,两者要一致
如果你的输入改为:52,23,25
或者将语句改为:
scanf("%d %d %d",&num1,&num2,&num3); //中间为空格
那样就可以了!

scanf("%d,%d,%d",&num1,&num2,&num3);
你输入时各数据间应该加“,”
或者写成scanf("%d%d%d",&num1,&num2,&num3);
才用空格