对"这我都做不出来!!!我要自杀了!!!大家快拦………………"的补充:

时间:2022-03-12 21:23:38
对:
#include "stdio.h"
main()
{
char con='y';
for(;con=='y';)
{
con=getchar();
}
}
如果第一次输入Y不能做到循环,有人建议在con=getchar();后加一个getchar();
这个程序是可以解决。但是我觉得不是那么简单的。
因为第一次输入的所有ASCII码都被存到一个输入缓冲区中,每次GETCHAR是从缓冲区中取字符。如果循环一次后GETCHAR()发现缓冲区中还有字符,就不等待终端输入,而是直接取缓冲区中尚没有被取的最早输入的字符。因此如果第一次用户不小心输入了YY\N,则缓冲区中存在的字符一次getchar();是吃不干净的.
所以我希望能有什么不太复杂的方法可以清空缓冲区,这应该是最好的方法吧!!
希望大家给点建议.分值不多,但是我想这是个大家都能遇到的问题.
(别说用GETS(),我希望能用GETCHAR())

14 个解决方案

#1


C里面似乎没有刷新流缓冲的函数

#2


可以判断下一个字符是否是回车(ASCII=10),如果不是,就提取下一个字符,直到是回车符为止,再继续执行循环体的内容。

#include "stdio.h"
main()
{
char con='y',temp;
for(;con=='y';)
 {
    con=getchar();
    temp=getchar();
    for(;temp!=10;)
       temp=getchar();
 }
}

#3


fflush(stdin)

#4


ffush(stdin)

#5


我觉得用getch()比较好

#6


fflush(stdin)需要什么H,
TC2中有支持吗?

getch()又是什么东东?是不是C的函数?

: showler(雪山飞豹) 的方法我觉得可行,我去试试.
但是似乎有点麻烦,不是吗?

#7


getch() 当然是C的函数。有几个相似的函数,getch(), getche(), 
getchar()。他们的区别在于:
getch()   从键盘输入一个字符,立刻返回,并在屏幕上显示。
getche()  从键盘输入一个字符,立刻返回,不在屏幕上显示。
getchar() 从键盘输入一个字符,不返回,直到用户键入回车才返回。
          字符在屏幕上显示。

#8


getch(), getche(), getchar()都是"stdio.h"吗?
TC2支持吗?

#9


潭的书上就有GETCHAR(),原来还有那么多相关的库函数,真开眼!!!
我得找一本完整介绍TC2所有函数库的书,jishiping(JSP) 英雄,有介绍吗??

#10


在TC2的帮助中只有GETC,GETCHAR,GETS,GETW.
没有GETCH,GETCHE.
但是写GETCH,GETCHE也能使,难道HELP还能留一手??

#11


这么看来还是showler(雪山飞豹)的方法是可行的

#12


jishiping(JSP) 和Wugifer() 的方法也都可行,但是为什么在TC2的帮助中都查不到这些函数呢?这些函数都是可以使用的!!

#13


getch()是宏

#14


宏?
DEFINE还是INCLUDE?

#1


C里面似乎没有刷新流缓冲的函数

#2


可以判断下一个字符是否是回车(ASCII=10),如果不是,就提取下一个字符,直到是回车符为止,再继续执行循环体的内容。

#include "stdio.h"
main()
{
char con='y',temp;
for(;con=='y';)
 {
    con=getchar();
    temp=getchar();
    for(;temp!=10;)
       temp=getchar();
 }
}

#3


fflush(stdin)

#4


ffush(stdin)

#5


我觉得用getch()比较好

#6


fflush(stdin)需要什么H,
TC2中有支持吗?

getch()又是什么东东?是不是C的函数?

: showler(雪山飞豹) 的方法我觉得可行,我去试试.
但是似乎有点麻烦,不是吗?

#7


getch() 当然是C的函数。有几个相似的函数,getch(), getche(), 
getchar()。他们的区别在于:
getch()   从键盘输入一个字符,立刻返回,并在屏幕上显示。
getche()  从键盘输入一个字符,立刻返回,不在屏幕上显示。
getchar() 从键盘输入一个字符,不返回,直到用户键入回车才返回。
          字符在屏幕上显示。

#8


getch(), getche(), getchar()都是"stdio.h"吗?
TC2支持吗?

#9


潭的书上就有GETCHAR(),原来还有那么多相关的库函数,真开眼!!!
我得找一本完整介绍TC2所有函数库的书,jishiping(JSP) 英雄,有介绍吗??

#10


在TC2的帮助中只有GETC,GETCHAR,GETS,GETW.
没有GETCH,GETCHE.
但是写GETCH,GETCHE也能使,难道HELP还能留一手??

#11


这么看来还是showler(雪山飞豹)的方法是可行的

#12


jishiping(JSP) 和Wugifer() 的方法也都可行,但是为什么在TC2的帮助中都查不到这些函数呢?这些函数都是可以使用的!!

#13


getch()是宏

#14


宏?
DEFINE还是INCLUDE?