新手请教,为啥我的b赋值不上
为啥我输入2.3,4.1进去,a能赋值2,但是b赋值的结果是个乱码,我理解不了,想请教一下int sum (int x,int y)
{
int z;
z = x+y;
return z;
}
#include <stdio.h>
int main()
{
int a,b,w;
printf ("please input two number :\n");
scanf ("%d,%d",&a,&b);
w = sum(a,b);
printf ("the overall number is %d\n",w);
return 0;
}
本帖最后由 qiuyouzhi 于 2020-3-18 20:18 编辑
scanf里面最好不加标点符号,除非你输入的时候也加上 你定义的是 int型,输入的是浮点型,能不出问题吗? int为整型,如果要输入浮点型需改为float 本帖最后由 sunrise085 于 2020-3-18 20:16 编辑
scanf函数读取键盘输入,格式化内容要和输入内容一致,你写的scanf("%d,%d",&a,&b);中间是以逗号隔开的,就输入第一个整数后就要输入一个逗号,否则就会出错。
一般情况下scanf内除了格式化操作符以外,不加任何符号,连空格都不要加
你可以看看我之前回答的一个有关scanf的帖子
之前回答的一个帖子 qiuyouzhi 发表于 2020-3-18 18:41
scanf里面不能加任何的标点符号,除了格式化操作符
不是不能加任何标点符号,而是慎重加。输入的内容和scanf内的内容一致即可。
回答问题前,请先搞清楚知识点,不要误导人
页:
[1]