代码中常有类似的如下的输入循环 char c; while((c=getchar())!=EOF).... 如果输入 字符+换行时,循环的代码会执行两次,主要是换行键作为字符存到了缓存队列中,第一次c为输入的值,第二次c为换行符 ,可以通过fflush(stdin);清除 EOF在linux下为ctrl+D window下为ctrl+z 这种循环写法虽然比较标准,但是感觉有点笨重 一般情况下可以改写如下: char c; while((c=getchar())!='\n')..... 顺便说下…