求解答大神!!设有声明语句“int a=1,b=0;”则执行以下语句后输出结果为什么?求解释程序

求解答大神!!设有声明语句“int a=1,b=0;”则执行以下语句后输出结果为什么?求解释程序意思,详细一点!

第1个回答  2015-01-03
最开始不写明是做0处理,即a为0,b也为0。追问

这个语句

追答

int的是你自己添的还是前一句的?

追问

前一句

第2个回答  2018-06-18
设有说明:int a=1,b=0;,则执行以下语句的输出结果是______。 switch(a) {case 1: switch(b) {case 0:printf("**0**\n");break; case 1:printf("**1*\n");break; } case 2:printf("**2**\n");break; }

A.**0**
B.**0** **2**
C.**0** **1** **2**
D.switch语句中存在语法错误
**0****2**

本题是switch-case语句的嵌套使用,外层switch语句的第一个分支(嵌套switch语句)执行完后,没有break;语句,将继续执行第二个分支。
第3个回答  2015-01-03
你没写执行什么语句哎
完善一下问题追问

图片没上传

????

追答

答案是B?
题中有2个switch语句,第一个switch(a):
因为a=1,执行case 1;
在case 1里,b=0:执行case 0.所以先输出
**0**;
但是switch语句没有break用于跳出的话会继续执行,switch(b)的case 0有break;所以不运行switch(b)的case1;而switch(a)的case1没有break,会继续执行switch(a)的case2.
则又输出**2**;
所以输出**0****2**

追问

🙏

谢谢~

你是学软件的吗

追答

信息院的,C语言也是专业课哩

追问

大几的

以后有问题还请多多帮助来

这个是程序咋运行哒?

本回答被提问者采纳

...b=0;”则执行以下语句后输出结果为什么?求解释程序
最开始不写明是做0处理,即a为0,b也为0。

c语言问题 一道关于switch的题?
int a = 1, b = 0;switch (a) { case 1:switch (b) { case 0:printf("**0 * *");break;case 1:printf("**1 * *");break;} case 2:printf("**2 * *");break;} }

int a=1; printf("%d, %d, %d\\n", a, ++a, a++);结果是
执行int a=1; printf("%d, %d, %d\\n", a, ++a, a++)的结果为3,3,1。这个语句的输出结果不是唯一的,因为对于求值的顺序是不一定的,所以说还有可能输出的结果为1,2,2。当求值的顺序为自右向左是,那么a++先引用1然后再加1,会输出1,然后++a是先加1再引用,会输出3这个结果,最...

C语言,设有说明语句int x=1,y=2; 则执行表达式x=y= =3后,变量x的值为...
先计算y==3,这个式子的值为0,因为y不等于3,为假,然后x=0。

下列语句序列执行后,x 的值是多少?求大神解答
5,++a是先加一,再判断

设有:int a,b;下面语句不正确的是?(恭请大神赐教)
B 解答:a+b=b+1 a+b是一个数值,不能给数值赋值。等号=左边必须是变量。

C++问题,求大神解答
T宏直接套进去,S2 = T(a++, a*++b, a+b+c)= a++*a+b+c*a*++b\/4 a,b经过MIN宏之后 a=b=3, c=5 = 3 * 3 + 3 + 5 * 3 * 4 \/ 4 = 27 MIN操作后a=4, b = 4, c = 5;!!!BUT!!!让我想想这是什么情况。

一道C++的函数选择题 要求详细解答
int count(int number) \/\/函数定义 没实际意义演示而已 { return number;} int a = 1;\/\/这个时候 内存里面有一个地址a 值为1 调用count(a); \/\/这个时候内存里面有一个地址a 和 number 例子2 (引用传递)int count(int &number) \/\/函数定义 没实际意义演示而已 { return number;} int a...

c语言程序??帮忙解答
1、 给你解释一下PP函数吧,pp(int a,int* b){ int c=4;p=*b+c; \/\/p是全局指针,针向了main函数中的局部变量b的地址,因此只要全局指针p所指向的地址的值改变了,那么变最b的值也就随之改变,并与*p相同,因此这里的结果*p应该为*b+c也就是2+4,结果是*p=6,同时变量b的值也是6...

有如下程序: main() {int a=3,b=4,c=5,d=2; if (a>b) if (a>c) prin...
整理一下:main(){ int a=3,b=4,c=5,d=2; if (a>b){ if (a>c) printf("%d",d+++1); else printf("%d",++d+1); } printf ("%d", d);}由于a>b为假,所以if里的语句都不执行,最后输出2

相似回答