| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2357 人关注过本帖
标题:求助:选择语句怎样才能不读入回车符
只看楼主 加入收藏
yjcf
Rank: 1
来 自:西安工业大学
等 级:新手上路
帖 子:145
专家分:0
注 册:2008-3-29
收藏
 问题点数:0 回复次数:15 
求助:选择语句怎样才能不读入回车符
例如这句代码,要输入a和一个回车才能执行switch,而这个回车符对以后的选择会有影响,怎样才能直接输入一个字符而不用回车即可执行?
while(1)
      {
       ch=getchar();
        switch(ch)
         {
           case 'a':
           case 'A': a_function();break;
           case 'b':
           case 'B': b_function();break;
           case 'c':
           case 'C': c_function();break;
           case 'd':
           case 'D': d_function();break;
           case 'e':
           case 'E': e_function();break;
           case 'f':
           case 'F': f_function();break;
           case 'q':
           case 'Q': exit(0);break;
搜索更多相关主题的帖子: 语句 回车 选择 
2008-06-01 20:25
yjcf
Rank: 1
来 自:西安工业大学
等 级:新手上路
帖 子:145
专家分:0
注 册:2008-3-29
收藏
得分:0 
没人知道吗?

泾溪石险人竞慎,终岁不闻倾覆人。却是平流无石处,时时闻说有沉论。
2008-06-01 21:13
yjcf
Rank: 1
来 自:西安工业大学
等 级:新手上路
帖 子:145
专家分:0
注 册:2008-3-29
收藏
得分:0 
救命呀!!!

泾溪石险人竞慎,终岁不闻倾覆人。却是平流无石处,时时闻说有沉论。
2008-06-01 21:53
yd4433
Rank: 1
等 级:新手上路
帖 子:404
专家分:0
注 册:2008-3-9
收藏
得分:0 
清空缓冲区 fflush(stdin)   或者把接受写到循环外面 我着是对你问的回答...你的程序 有点小汗..

------...-.-..-...-----........-------.......----.....------....||- - !
2008-06-01 22:17
yjcf
Rank: 1
来 自:西安工业大学
等 级:新手上路
帖 子:145
专家分:0
注 册:2008-3-29
收藏
得分:0 
回复 4# yd4433 的帖子
清空缓冲区--怎样清空?
把接受写到循环外面 ????
有点小汗--->有很多程序都可以这样啊

泾溪石险人竞慎,终岁不闻倾覆人。却是平流无石处,时时闻说有沉论。
2008-06-01 22:23
yd4433
Rank: 1
等 级:新手上路
帖 子:404
专家分:0
注 册:2008-3-9
收藏
得分:0 
清空缓冲区 fflush(stdin) 写在ch=getchar();下面

------...-.-..-...-----........-------.......----.....------....||- - !
2008-06-01 22:33
moonwalker
Rank: 1
等 级:新手上路
威 望:1
帖 子:909
专家分:2
注 册:2007-3-2
收藏
得分:0 
改为
while('\n' != (ch = getchar()))
{
    switch()
    ...
}
另外to 4#
LZ这个按键处理比较正常,没看到什么奇怪的地方。
不过最好加上default,来处理那些没有定义的按键。

“视频教程网”免费提供教学资源
C不限制你的自由!
条件是自己承担滥用自由的恶果!
2008-06-01 22:57
moonwalker
Rank: 1
等 级:新手上路
威 望:1
帖 子:909
专家分:2
注 册:2007-3-2
收藏
得分:0 
[bo][un]yd4433[/un] 在 2008-6-1 22:33 的发言:[/bo]

清空缓冲区 fflush(stdin) 写在ch=getchar();下面

这样不行,都清空了就没法处理了。

“视频教程网”免费提供教学资源
C不限制你的自由!
条件是自己承担滥用自由的恶果!
2008-06-01 22:59
yd4433
Rank: 1
等 级:新手上路
帖 子:404
专家分:0
注 册:2008-3-9
收藏
得分:0 
那就写在最下面 . .

------...-.-..-...-----........-------.......----.....------....||- - !
2008-06-01 23:00
moonwalker
Rank: 1
等 级:新手上路
威 望:1
帖 子:909
专家分:2
注 册:2007-3-2
收藏
得分:0 
[bo][un]yjcf[/un] 在 2008-6-1 20:25 的发言:[/bo]

怎样才能直接输入一个字符而不用回车即可执行?

 ...

这个可以用键盘中断。bioskey();

“视频教程网”免费提供教学资源
C不限制你的自由!
条件是自己承担滥用自由的恶果!
2008-06-01 23:03
快速回复:求助:选择语句怎样才能不读入回车符
数据加载中...
 
   



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

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