新人求助
#include <stdio.h>void main()
{
int i=0;
char c;
while(1){
c='\0';
while(c!=13&&c!=27)
{
c=getchar();
printf("%c\n", c);
}
if(c==27)
break;
i++;
printf("The No. is %d\n", i);
}
printf("The end");
}
程序就是这样了,问题是,为什么摁esc就把我刚开始写的英文就没了.而且不能输出下面那些输出命令的东西,新手,看书有困难..
搜索更多相关的解决方案:
新人
----------------解决方案--------------------------------------------------------
应为 while(1)
所以循环不会停止,除非c==27;才会看到后面的输出命令
----------------解决方案--------------------------------------------------------
不明白你的问题
----------------解决方案--------------------------------------------------------
可是break不是可以终止循环吗?当我摁下ESC的时候还是没有去实现printf("The No. is %d\n", i);printf("The end");这两句,
没有打印输出那个i数字,应该怎么改一下比较方便的
----------------解决方案--------------------------------------------------------
你的程序读不到ESC,所以按ESC是没有用的。
----------------解决方案--------------------------------------------------------
那应该如何修改一下呢?
----------------解决方案--------------------------------------------------------
按下ESC回车后,遇到break;跳出循环,当然看不到The No. is ...
----------------解决方案--------------------------------------------------------
可是连the end都没有...
----------------解决方案--------------------------------------------------------
在vc中可以看到,不知道tc行不行
----------------解决方案--------------------------------------------------------
不明白吗 ?
----------------解决方案--------------------------------------------------------