c语言这道题目不会做,哪位好心人帮帮我。
#include<stdio.h>voidmain(){intx=1,y=0;switch(x){case1:switch(y){case0:printf("Title1...
#include<stdio.h>
void main()
{
int x=1, y=0;
switch(x)
{
case 1:
switch(y)
{
case 0: printf("Title1 \n");break;
case1:printf("Title 2 \n");break;
}
case 2:printf("Title3 \n");
}
}
为什么答案是title1 和 title3 ?如果是我来做答案就是title1 ,而没有title3,我的理解x=1,就是case1这种情况,在case1中的switch(y)中y的值为0,所以就是 case 0: printf("Title1 \n");break; 里面有个break,就不会做下去了,所以答案就是title1. 我不知道我哪里理解错了,哪位大神帮帮我谢了。 展开
void main()
{
int x=1, y=0;
switch(x)
{
case 1:
switch(y)
{
case 0: printf("Title1 \n");break;
case1:printf("Title 2 \n");break;
}
case 2:printf("Title3 \n");
}
}
为什么答案是title1 和 title3 ?如果是我来做答案就是title1 ,而没有title3,我的理解x=1,就是case1这种情况,在case1中的switch(y)中y的值为0,所以就是 case 0: printf("Title1 \n");break; 里面有个break,就不会做下去了,所以答案就是title1. 我不知道我哪里理解错了,哪位大神帮帮我谢了。 展开
3个回答
展开全部
switch(y)里面语句的break;是跳出该switch的分支的;因为switch(x)的case1没有break;所以接着执行case 2;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{
int x=1, y=0;
switch(x)
{
case 1:
switch(y)
{
case 0: printf("Title1 \n");break;
case1:printf("Title 2 \n");break;
}
break;//这里加一个break就好了
case 2:printf("Title3 \n");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
break是跳出switch执行以后的语句
跳出case0之后自然就会执行case2
跳出case0之后自然就会执行case2
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询