| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 583 人关注过本帖
标题:不加#会出现这样的问题
只看楼主 加入收藏
FangMengHao
Rank: 1
等 级:新手上路
帖 子:43
专家分:5
注 册:2013-6-19
结帖率:60%
收藏
 问题点数:0 回复次数:7 
不加#会出现这样的问题
加了#
sdfkdsjflksjdlfjsd#
ch=s;115 ch=d;100 ch=f;102 ch=k;107 ch=d;100 ch=s;115 ch=j;106 ch=f;102
ch=l;108 ch=k;107 ch=s;115 ch=j;106 ch=d;100 ch=l;108 ch=f;102 ch=j;106
ch=s;115 ch=d;100 Press any key to continue


不加#
dsjflksdjflksdjf
ch=d;100 ch=s;115 ch=j;106 ch=f;102 ch=l;108 ch=k;107 ch=s;115 ch=d;100
ch=j;106 ch=f;102 ch=l;108 ch=k;107 ch=s;115 ch=d;100 ch=j;106 ch=f;102
ch=
;10 #
Press any key to continue
程序代码:
# include <stdio.h>

int main (void)
{
    char ch;
    int count = 0;
    while ( ( ch=getchar() ) != '#')
    {
        printf ("ch=%c;%d ", ch, ch);
        count++;
        if (count % 8 == 0)
            printf ("\n");
    }
    return 0;
}
这个是因为printf语句的问题么?我把下面的count++开始到printf("\n");  都注释之后,还是会出现这样的问题。
搜索更多相关主题的帖子: color 
2014-05-23 13:33
Arons
Rank: 1
等 级:新手上路
帖 子:5
专家分:9
注 册:2014-5-22
收藏
得分:0 
看看
2014-05-23 14:32
porywei
Rank: 2
等 级:论坛游民
帖 子:36
专家分:73
注 册:2014-3-6
收藏
得分:0 
你这是想说什么问题,最后那个10是回车啊

程序员没有女朋友
2014-05-23 17:02
张小齊
Rank: 2
等 级:论坛游民
帖 子:14
专家分:46
注 册:2014-5-23
收藏
得分:0 
看: while ( ( ch=getchar() ) != '#')
在sdfkdsjflksjdlfjsd最后沒有遇到‘#’程序继续运行,getchar()录入一切字符包括:换行
有没有发现最后多的那个值是:10。
2014-05-23 17:18
top398
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:427
专家分:857
注 册:2014-5-2
收藏
得分:0 
循环是当读取到 # 时结束。
在输入加 # 的一行时,读取到 # 时结束。
在输入不加 # 的一行时,一直处理到换行符,故输出
ch=
;10
然后继续等待输入,之后输入了 # 并回车,循环结束。

对于
scanf
getchar
getch
gets
这一类输入函数,应该自己多写程序片段反复试验,自然会有所理解。

2014-05-23 22:57
FangMengHao
Rank: 1
等 级:新手上路
帖 子:43
专家分:5
注 册:2013-6-19
收藏
得分:0 
恩!我再去看看,谢谢大家了!
2014-05-24 13:10
FangMengHao
Rank: 1
等 级:新手上路
帖 子:43
专家分:5
注 册:2013-6-19
收藏
得分:0 
回复 5 楼 top398
有什么办法能 敲了回车后再输入#回车结束  不出现:10
2014-05-24 15:42
top398
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:427
专家分:857
注 册:2014-5-2
收藏
得分:0 
以下是引用FangMengHao在2014-5-24 15:42:15的发言:

有什么办法能 敲了回车后再输入#回车结束  不出现:10
说来也简单,你在循环内判断一下,当前读取到的字符是否是 '\n'(也就是10),如果是 '\n' 就忽略。
2014-05-25 17:23
快速回复:不加#会出现这样的问题
数据加载中...
 
   



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

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