1447391641 发表于 2020-12-3 20:41:05

程序运行

#include<stdio.h>
int main()
{
int v1=0,v2=0;
char ch;
while((ch=getchar())!='\n')   while这个条件看不懂
switch(ch)
{
case 'a':               这个a和h后面没有值,请问输入china该怎么执行呢。
case 'h':
default:v1++;
case '0':v2++;
}
printf("%d,%d\n",v1,v2);
}

北冰羊 发表于 2020-12-4 09:01:17

#include<stdio.h>
int main()
{
int v1=0,v2=0;
char ch;
while((ch=getchar())!='\n')    //ch=getchar() 即接收一个字符类型的数据,while((ch=getchar())!='\n')即接接收到\n回车停止接收
switch(ch)
{
    case 'a':                        //由于语句中没有break;会从符合条件的位置顺序往下执行。如'c'从defaut开始执行直到最后,'a'从case'a':开始直到结束。最后v1=5,v2=5
    case 'h':
    default:v1++;
    case '0':v2++;         
}
printf("%d,%d\n",v1,v2);
}

Dadong丶 发表于 2020-12-5 09:12:54

楼上正解。学习到了。

1447391641 发表于 2020-12-5 14:09:54

北冰羊 发表于 2020-12-4 09:01
#include
int main()
{


case 'a'后边没有条件请问执行的是什么呢。
页: [1]
查看完整版本: 程序运行