标题:字符串输入和输出有点问题?求助!
只看楼主
Eahonxu
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-13
结帖率:96.15%
已结贴  问题点数:20 回复次数:5 
字符串输入和输出有点问题?求助!
#include <stdio.h>
int main()
{
    char name[20];
    char family[20];
    scanf("%s,%s", name, family);
    printf("%s,%s\n", name, family);
   
    return 0;
}
我输入Eahon,xu输出的结果是这样的:
Eahon,xu
EAHON,XU,\277_\377
Program ended with exit code: 0
请问为什么输出结果全是大写字母以及后面多余的字符串是什么意思?翻了好久的书也找不到问题。。。
搜索更多相关主题的帖子: include family return 字符串 字母 
2016-07-16 12:57
captain2050
Rank: 2
等 级:论坛游民
帖 子:57
专家分:43
注 册:2016-7-15
得分:20 
回复 楼主 Eahonxu
输入字符串时scanf会把空格当成字符串之间的分割符,所以你可以把代码改成这样
#include <stdio.h>
int main()
{
    char name[20];
    char family[20];
    scanf("%s%s", name, family);
    printf("%s,%s\n", name, family);
    return 0;
}
把scanf括号里的两个%s挨在一起,然后输入时两个字符串之间要有空格比如这样 fifuchuan111 zifuchuan222
这就行了
2016-07-16 14:19
Eahonxu
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-13
得分:0 
回复 2楼 captain2050
那这个输出的字母全是大写是什么情况啊
2016-07-16 14:30
captain2050
Rank: 2
等 级:论坛游民
帖 子:57
专家分:43
注 册:2016-7-15
得分:0 
回复 3楼 Eahonxu
#include <stdio.h>
int main()
{
    char name[20];
    char family[20];
    scanf("%s%s", name, family);
    printf("%s,%s\n", name, family);
    return 0;
}
这个代码肯定正确,我在我的电脑上执行是成功的。
你用这个代码如果还是有问题那就检查你的输入或电脑设置是否有问题
2016-07-16 14:38
Eahonxu
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2016-7-13
得分:0 
好吧 谢谢了
2016-07-16 14:47
低调低调
Rank: 3Rank: 3
来 自:四川省成都市
等 级:论坛游侠
威 望:1
帖 子:66
专家分:103
注 册:2016-6-23
得分:0 
scanf("%s,%s", name, family);
你最大的一个错误在于scanf(“”);“”中间请不要用“,”隔开,你可以选择用空格  或者用两个输入语句分别输入
2016-07-16 19:41



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




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

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