c语言中两个switch语句怎么看啊?
发布网友
发布时间:2022-05-06 21:59
我来回答
共5个回答
热心网友
时间:2023-09-23 06:04
在C语言程序中,可以使用两个switch语句,只要满足要求即可。
1、C语言中,switch语句的使用格式如下:
switch(表达式)
{
case 常量表达式1 : 语句1; break;
case 常量表达式2 : 语句2; break;
......
case 常量表达式n : 语句n; break;
default : 语句n+1;
}
2、举例如下:
int i=4, a=0;
switch(i)
{
case 1 : a++; break; // 如果i=1,执行case 1 后面的语句,执行完后退出switch
case 2 : a+=2; break; // 如果i=2,执行case 2 后面的语句,执行完后退出switch
case 4 : a+=4; break; // 如果i=4,执行case 4 后面的语句,执行完后退出switch
default : a=0; // 如果i不等于上面所以case中的值,执行default后面的语句,执行完后退出switch
}
热心网友
时间:2023-09-23 06:05
x=1,进入swith(x)的case1.也就是
下面这段
switch(y)
{
case 0:a++;break;
case 1:b++;break;
}
此时y=0;进入case 0,。运行a++使a=1,然后break跳出switch(y).
因为在swith(x)的case 1中没有break语句,所以一次运行到case 2.a++和b++使a=2,b=1;
热心网友
时间:2023-09-23 06:05
先x为1则执行case1,case1中有switch,y为0,则执行case0,a就变为1,break跳出本层循环,进入case2,a又增加1变为2,但b只增加一次,由0变为1,最后输出2 1
祝你愉快!
热心网友
时间:2023-09-23 06:06
#include<stdio.h>
void main()
{
int x=1,y=0,a=0,b=0;
switch(x)//(1)x=1,执行case 1
{
case 1:switch(y)//(2)y=0,执行case 0
{
case 0:a++;break;//(3)这时a=1了,遇到break跳出内部swith
case 1:b++;break;
}//(4)但是这里没有break,继续执行case 2
case 2:a++;b++;break;//(5) 执行这里 a=2,b=1,遇到break,跳出外部swith
}
printf("%d %d\n",a,b);//(6)打印a为2,b为1
}
1->2->3->4->5->6
热心网友
时间:2023-09-23 06:06
首先
switch(x) //x=1
{
case 1: //x=1跳到此处执行
switch(y) //y=0
{
case 0: //y=0跳到此处执行
a++; //a的值+1 a=1
break;
}
//关键出现了,因为switch(x)的case 1没有break,所以switch(x)的case 2:a++; b++; break;也会执行的,此时a=2, b=1
}
//所以最后结果为2, 1