求高手解答
#include <stdio.h>
int main(viod)
{
char ch;
while((ch=getchar())!=='#')
if(ch=='\n')
continue;
printf("s1\n");
if(ch=='c')
continue;
esle if(ch=='b')
break;
esle if(ch=='g')
goto laststep;
printf("s2\n");
laststep:printf("s3\n");
}
printf("done\n");
return 0;
}
在上述程序中,我一次输入:
q
c
g
b
会输出什么结果啊?尤其是输入q后的结果是什么
[解决办法]
#include <stdio.h>int main(viod){ char ch; while((ch=getchar())!=='#') { if(ch=='\n') continue; printf("s1\n"); if(ch=='c') continue; esle if(ch=='b') break; esle if(ch=='g') goto laststep; printf("s2\n"); laststep:printf("s3\n"); } printf("done\n"); return 0;}
[解决办法]
输入 q
应该直接打印
s1
s2
s3
然后继续等待输入吧?