我用C语言scanf输入2个数字是怎么只能收到一个

 我来答
娱乐小八卦啊a
高粉答主

2020-02-08 · 娱乐小八卦,天天都知道
娱乐小八卦啊a
采纳数:256 获赞数:117819

向TA提问 私信TA
展开全部

代码和输入格式有误。

1、scanf("%d,%d",&a,&b);按照这个格式,输入数据的时候,应该加上逗号。比如说想输入22 33 就应该 22,33。

2、也可以像这样scanf("%d %d",&a,&b);中间用空格隔开,那样就可以直接输入 22 33了。

scanf 的功能用一句话来概括就是“通过键盘给程序中的变量赋值”。该函数的原型为:

# include <stdio.h>

int scanf(const char *format, ...);

它有两种用法,或者说有两种格式。

扩展资料

使用scanf的注意事项:

1、参数的个数一定要对应

在前面介绍 printf 时说过,“输出控制符”和“输出参数”无论在“顺序上”还是在“个数上”一定要一一对应。这句话同样对 scanf 有效,即“输入控制符”和“输入参数”无论在“顺序上”还是在“个数上”一定要一一对应。

这种错误是初学者经常犯的,由于粗心大意,少写一个参数。更严重的是,这种错误在编译的时候不会报错。printf 也是一样,即使“输出参数”少写了也不会报错,但从程序的功能上讲这么写就是错的。所以在编程的时候一定要避免这种错误的发生。

2、输入的数据类型一定要与所需要的数据类型一致

在 printf 中,“输出控制符”的类型可以与数据的类型不一致。在 scanf 中,对于从键盘输入的数据的类型、scanf 中“输入控制符”的类型、变量所定义的类型,这三个类型一定要一致,否则就是错的。虽然编译的时候不会报错,但从程序功能的角度讲就是错的,则无法实现需要的功能。

参考资料来源:

百度百科——scanf

凌雨殁
推荐于2017-11-28 · TA获得超过110个赞
知道答主
回答量:27
采纳率:0%
帮助的人:30.4万
展开全部
因为你的代码是scanf("%d,%d",&a,&b);
所以按照格式你应该加上逗号。比如说你想输入22 33 就应该 22,33
也可以像这样scanf("%d %d",&a,&b);中间用空格隔开,那样你就可以直接输入 22 33了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sun1163437314
2016-06-17 · TA获得超过249个赞
知道小有建树答主
回答量:150
采纳率:100%
帮助的人:53.7万
展开全部
#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d%d",&a,&b); //引号里面的不要加逗号
c = max(a,b);
printf("max = %d\n",c); //"]n"是换行符
return 0;
}
int max(int x,int y){
int z;
if(x > y)
z = x;
else z = y;
return z;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
go学龙
2016-06-17 · TA获得超过484个赞
知道小有建树答主
回答量:520
采纳率:76%
帮助的人:229万
展开全部
同学你2个数之间应该加上逗号。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式