标题:scanf函数问题
只看楼主
持剑的战士
Rank: 1
等 级:新手上路
帖 子:30
专家分:3
注 册:2019-12-6
结帖率:62.5%
已结贴  问题点数:10 回复次数:7 
scanf函数问题
scanf("%d%d%d",&a,&b);
    printf("%d %d %d\n",a,b);

scanf("%d %d %d",&a,&b);
    printf("%d %d %d\n",a,b);
为什么我输入1□2□3
输出的结果都是1□2□3呢?

但是如果像下面这种程序,
char name[20];
char sex;
scanf("%s %c",name,&sex);
    printf("%s %c\n",name,sex);

.....
scanf("%s%c",name,&sex);
.....
我都输入wang□m
    上面就输出wang□m
    而下面的却输出wang
这是为什么呢?
请求大佬解答。
搜索更多相关主题的帖子: 函数 scanf printf 输出 name 
2019-12-31 18:32
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:0 
发现
总结
记住
利用

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2019-12-31 23:38
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:0 
计算机学科本身,没有一般理科的认识自然过程,因此没有那么多为什么
为什么?
前辈代码就那么实现的。

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2019-12-31 23:40
komorebi0110
Rank: 2
来 自:上海
等 级:论坛游民
帖 子:145
专家分:17
注 册:2019-11-23
得分:0 
蹲一个解答

我想要两颗西柚。
2020-01-01 20:38
吕孟伟
Rank: 8Rank: 8
等 级:贵宾
威 望:27
帖 子:200
专家分:870
注 册:2018-10-4
得分:4 
scanf("%s %c",name,&sex);当""中有空格时,scanf会等待你输入一个空格。
scanf("%s%c",name,&sex);当""中没有空格时,若你输入wang□m,scanf会把空格当成一个字符。
#include <stdio.h>
int main(void)
{
    char name[10];
    char sex;
    scanf("%s%c", &name, &sex);
    printf("%s %d", name, sex);
    return 0;
}
输入输出:
wang m
wang 32
空格的十进制是32

借用一下侯捷的话:勿在浮沙筑高台。
2020-01-01 22:30
逸风er
Rank: 1
来 自:安徽
等 级:新手上路
帖 子:3
专家分:0
注 册:2015-5-10
得分:0 
我记得用scanf(%d %d,&*,&*)与scanf(%d%d,&*,&*) 前者在控制台输入时空格也是要打出来的不然就会少一个字节吧;

我很懒!!!
2020-01-01 23:16
柒贰伍玖
Rank: 2
等 级:论坛游民
威 望:1
帖 子:4
专家分:27
注 册:2019-12-28
得分:3 
数字输入的时候 碰到非数字字符 它会认为这个数字输入完成了
字符串的话 它会吧回车键当作一个字符串输入结束,在碰到回车之前它认为你输入的东西都是一个字符串里面的
2020-01-02 11:31
bcbbcclbbc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:194
专家分:528
注 册:2019-8-15
得分:3 
用scanf()函数输入数据的时候 %c 是最容易出问题的了,因为%c说明要读取一个字符,如果没有限定,则会读取任意字符当然也包括空格,转义字符。。。
2020-01-02 22:21



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-498755-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.934641 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved