C语言中,像这样getchar();单独成行有什么作用或者是有什么意义啊?(我只知道如果b=get

C语言中,像这样getchar();单独成行有什么作用或者是有什么意义啊?(我只知道如果b=getchar();是可以给变量b录入一个字符的)

建议你去看看关于输入输出的资料,这也是c相对比较难的地方,是向缓存中存入的用户输入的第一个字母,可以将读取的字符放到变量中。例如:char ch=getchar();
getchar函数的格式:c=getchar();
getchar函数的作用:从系统隐含的输入设备(如键盘)输入一个字符。
getchar函数只能用于单个字符的输入,一次输入一个字符。程序的功能是输入一个字符,显示一个字符,回车换行,再输入并显示一个字符。而运行时字符是连续输入的,运行结果却是正确的,这是因为输入字符后,它们暂存于键盘的缓冲区中,然后由getchar函数从键盘缓冲区中一个一个的取出来。使用getchar函数时,在程序(或文件)的开头也必须加上编译预处理命令:#include "stdio.h"
getchar输入字符,一直到按下回车才结束,然后执行代码
getch不用按回车键

#include "stdio.h"
main()
{
int i=5;
void palin(int n);
printf("\40:");
palin(i);
printf("\n");
}
void palin(int n)
{
char next;
if(n<=1)
 {
 next=getchar();
 printf("\n\0:");
 putchar(next);
 }
else
 {
 next=getchar();
 palin(n-1);
 putchar(next);
 }
}
顺祝你天天幸福快乐。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-03
消除缓冲区的字符
比如你a = getchar();你按下了回车,此时回车符会存在于缓冲区中
这时你继续输入的时候,比如你输入一个字符串gets(str)
此时这个gets()会把那个缓冲区的回车读入到str中,这样不是我们所期望的。
所以在之前,我们可以用单独的getchar()接收掉这个回车符,那么就可以正确输入了本回答被提问者采纳
第2个回答  2015-12-19

    getchar比如写在一个程序的结尾,就可以起到由输入设备退出的作用

    getchar比如用在scanf();和另一scanf();之间,可以起到接收掉键盘缓存字符('\n')

    getchar本身作用也就是获取一个字符,可以起到交互作用,比如输入'y', 'n'之类的

本回答被网友采纳
第3个回答  2015-12-19
暂停一下
相似回答