C语言中输入问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 17:37:07
#include<stdio.h>
main()
{
float a,b,c;
scanf("%f,%f",&a,&b);
c=a+b;
printf("%f+%f=%f",a,b,c);
}

scanf中%f中间如果用空格。scanf("%f %f",&a,&b)则没有问题。
但是为什么不能用逗号呢。用逗号则b显示的是0000000.请问这是为什么啊。
我输入的时候中间是输入逗号的啊。。。试过好多次还是不行。

不是不能用逗号,而是如果格式控制符中加上了逗号,那么在输入时也要在对应的地方输入逗号,比如:

scanf("%f,%f",&a,&b);

那么输入时,就必须是如下形式:

1.2,3.5(回车),中间的逗号是必须的。

也就是说,输入的格式必须和格式控制字符串一致。格式控制字符串中有什么,输入时就得有什么。

来自:求助得到的回答

楼上解释得很详细了