C语言输入函数

scanf函数是不是必须让输入变量的格式与格式字符串一致吗?比如scanf("%c%c%c",&a,&b,&c)是不是输入格式也必须是a(空格)b(空格)c?scanf(... scanf函数 是不是必须让输入变量的格式与格式字符串一致吗?
比如scanf("%c %c %c",&a,&b,&c)是不是输入格式也必须是a(空格)
b(空格)c?
scanf("%c,%c,%c",&a,&b,&c) 输入格式必须是a,b,c?
scanf("a=%d,b=%d,c=%d",&a,&b,&c) 输入也必须为a=,b=,c=,的格式?

麻烦知道的看下我说的对不对,还有哪些需要注意的地方 谢谢!
展开
 我来答
星月小木木
2016-01-15 · TA获得超过3.2万个赞
知道大有可为答主
回答量:2.4万
采纳率:0%
帮助的人:9414万
展开全部

C语言中两种方法都可以,但有区别scanf("%s",s)是读取不到空格的。而gets(s)可以读取。
两种方法都是一个一个字符读取的。不同的是scanf是遇到空格或者回车键就会结束,但gets是只有输入回车键才会终止读取字符串!下面是例子:

#include <stdio.h>
int main()
{
    char x[10];
    scanf("%s",x);
    printf("%s",x);
    return 0;
}

下面是gets;

#include <stdio.h>
int main()
{
    char x[10];
    gets(x);
    printf("%s",x);
    return 0;
}

zhangwenjun32
推荐于2018-02-26
知道答主
回答量:4
采纳率:0%
帮助的人:6.3万
展开全部
我帮你上机实践了一下,scanf("%c %c %c",&a,&b,&c)输入格式也可以是a(空格)b(空格)c,也可以是abc。
而scanf("%c,%c,%c",&a,&b,&c) 输入格式必须是a,b,c。
scanf("a=%d,b=%d,c=%d",&a,&b,&c) 输入也必须为a=,b=,c=,的格式。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liauys
2008-11-24 · TA获得超过219个赞
知道答主
回答量:62
采纳率:0%
帮助的人:0
展开全部
scanf("%c %c %c",&a,&b,&c),三个输入值必须用空格或换行分开,多少个空格没关系。

scanf("%c,%c,%c",&a,&b,&c) 输入格式必须是a,b,c? 是的,就依序输入要存入a的字符,存入b的字符,然后c.

scanf("a=%d,b=%d,c=%d",&a,&b,&c)
这行执行时会出错的,scanf里面只能有%i %s %c这些flag。显示的话应该用printf.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
牵寒天i8
2008-11-26 · 超过20用户采纳过TA的回答
知道答主
回答量:115
采纳率:0%
帮助的人:0
展开全部
scanf("a=%d,b=%d,c=%d",&a,&b,&c)
是错误的
scanf()与printf()函数不一样的,
scanf("%c,%c,%c",&a,&b,&c) 这样的话 输入的时候一定要用逗号隔开的,用空格隔开输入会出错的
至于
scanf("%c %c %c",&a,&b,&c)中间有没空格都一样的 输入的时候都要用空格或,隔开的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
超级奶爸头子
2008-11-24 · TA获得超过668个赞
知道小有建树答主
回答量:1111
采纳率:0%
帮助的人:603万
展开全部
是的,因为scanf是输入流,对你一切的输入都有响应,所以输入一个空格和不输入空格是不一样的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(13)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式