#include <stdio.h>
int main(void)
{
char ch;
while ((ch=getchar()) != '#')
{
if (ch == 'a')
printf("step a\n");
else if (ch == 'b')
break;
else if (ch == 'c')
printf("step c\n");
else if (ch == 'd')
printf("step d\n");
else
{
printf("step 1\n");
printf("step 2\n");
}
}
printf("Done!\n");
return 0;
}
题主输入a,c,d的时候有换行吧,getchar()是会把换行也读入的哦,而换行不等于a,c,d这几个字符,只能在else那里输出了
代码中有一句就是输入的字符是b就退出循环
else if (ch == 'b')
break;