当前位置:编程学习 > C/C++ >>

一个C语言问题。关于switch()语句的。

#include <stdio.h>#include <stdlib.h> int main() { char ch; while((ch=getchar())!='#'); { switch(ch) { case 'a': printf("it is Correct!"); break; case 'b': printf("it is Error!"); break; default: printf("Please input afresh!"); } } 按照代码所示,我输入一个字符 a ,得到的显示应该是 it is Correct! 但我输入后 却没有显示 这是什么原因 ?问题出哪了,请指点迷津。
答案:while((ch=getchar())!='#'); 把分号去掉,否则不输入#就死循环了。
其他:楼主,你好
你的这一行
while((ch=getchar())!='#');

后面的分号明显是不必要的
请楼主注意while语句的使用
另外第一行的两组分行写
程序我已测试通过
请检验,谢谢 因为你设定的循环结束条件是输入#号,所以在输入#号之前一直是读取字符状态……而且你这循环不对,取到里面的ch永远是最后一个输入的字符……

上一个:我现在培训嵌入式,先期复习了下C语言,感觉好多东西丢掉了!不知道对后期的影响大不大?
下一个:C++中三维数组在计算机中是如何存储的?

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,