| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1619 人关注过本帖
标题:求助:用C编这个程序
取消只看楼主 加入收藏
I520C
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-7-4
结帖率:100%
收藏
 问题点数:0 回复次数:3 
求助:用C编这个程序
题:编写一程序,其功能如下:
  若输入T,显示一行“欢迎您,老师!”,并提示可以继续输入;
  若输入S,显示一行“欢迎您,学生!”,并提示可以继续输入
  若输入W,显示一行“欢迎您,工人!”,并提示可以继续输入;
  若输入的是其他字符,则退出整个程序  

 谢谢!
搜索更多相关主题的帖子: 工人 其他 
2008-10-08 08:03
I520C
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-7-4
收藏
得分:0 
请问那行getchar();在程序是什么意思呀。 我试了一下,缺了那行getchar() 就编不出了 。  我查了函数表,上面只是说getchar函数的功能是从键盘上输入一个字符。其一般形式为: getchar(); 通常把输入的字符赋予一个字符变量,构成赋值语句。和getch();的区别就是带不带回显。可换成getch(); 就编不了了。
2008-10-15 18:27
I520C
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-7-4
收藏
得分:0 
[bo][un]广陵绝唱[/un] 在 2008-10-15 21:22 的发言:[/bo]

这里的getchar()的功能是把从scanf输入时敲入的,存在键盘缓存区中的回车符给吃掉,以免影响程序正常运行。如不用回显,这么写也可以:
#include
int main(void)
{
    char c;
    while(1)
    {
        c ...

很感谢你的回复,
那个getchar();就是用来接受回车的,用getch();就是不带回显;那为什么第一个程序有两个输入函数(ch=getchar(); getchar()) ,而第2个就只有一个输入函数(getch())呢?所以我还是不太明白getchar()和getch()在这个程序中的区别,还有那个键盘缓存区的意思。请你解释一下。谢谢!

[[it] 本帖最后由 I520C 于 2008-10-15 22:32 编辑 [/it]]
2008-10-15 22:30
I520C
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-7-4
收藏
得分:0 
[bo][un]广陵绝唱[/un] 在 2008-10-15 22:43 的发言:[/bo]

~~~~~~~~~~~~~~~`

    当用 getchar() 或 scanf 时,输入完毕,都要敲一下回车键才完成输入,所以这个回车符就被存到键盘缓存区中,当遇到下一个输入语句时,就会被程序当作输入符号输入。

    当用 getch() 时 ...

很感谢你的耐心解答。
我想是不是每当遇到这种选择结构语句的判断(if(),switch())时,都要用这种组合(ch=getchar(); getchar())完成输入(还有其他情况需要这样的组合么?)。而一般的输入语句就不需要了吧。
2008-10-17 08:14
快速回复:求助:用C编这个程序
数据加载中...
 
   



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

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