为啥是2,1 我算的是1,0
我的意思是a++不是运算完在自增1么 那不就是说再case2的时候虽然是++ 但是 自增的时候不在printf之内?
追答是a++这一条语句执行完之后 就+1不是所有执行完才加1
我的意思是a++不是运算完在自增1么 那不就是说再case2的时候虽然是++ 但是 自增的时候不在printf之内?
追答a++这条指令执行完就+1,大括号里的所有语句都执行完就退出switch语句,然后执行printf函数。
来自:求助得到的回答我的意思是a++不是运算完在自增1么 那不就是说再case2的时候虽然是++ 但是 自增的时候不在printf之内?
追答到printf的时候,所有的计算都完成了。。。
追问意思是不管前面是不是a++ 还是++a 只要打printf了 就算是a++也要也要printf出最后的结果既a自增1后的结果?
追答你自己看看代码嘛,你printf a和b的时候,a和b计算早就结束了,跟前增还是后增没有任何关系的。除非是在它正在计算的时候取它的值。比如
int i=0,a=1;
i=++a;//前自增,先增加再返回值,所以,i值为2,a为2
i=a++;//后自增,取自增之前的值,再自增,i为1,a为2
后面i的值不同,但a的值是一样的
main() { int x=1,a=0,b=0; switch(x){
2.添加break后,结果是a=1,b=0 include "stdio.h"main(){ int x=1,a=0,b=0;switch(x){ case 0 : b++ ; break ;case 1 : a++ ; break ; case 2 : a++ ; b++ ; break ;} printf("a=%d,b=%d\\n",a,b);} ...
...0:b++;case 1:a++;case 2:a++;b++;} printf("%d,%d",a,b);_百度...
开始 x=1 执行 case 1 a就变成1了然后没有break继续执行case2 a就变成2了 然后又没有 break 继续执行case3 所以b为1了 所以就是2,1 case 语句若没有break就会继续往下执行下面的case 语句
int x=1,a=0,b=0; switch(x) { case 0: b++; case 1: a++; case 2...
进入时,x=1,即switch(1) ,此时进入到case 1,执行a++后,a=1;由于没有break,所以继续执行下面的语句,case 2: a++; b++; 执行完之后,a=2,b=1。应该解释的比较清楚吧。
...int x=1,a=0,b=0; switch(x){ case 0: b++; case 1: a++ ca_百度...
因为每条case后面没有break,所以从case 1挨个执行,因此答案是A
...{ int x = 1 , a = 0 , b = 0 ; switch( x ) {
因为x=1,所以执行switch语句中case 1:a++;语句a=1 又因为case 1与case 2之间没有break;语句,所以继续执行case 2:a++;b++;语句,则a=2,b=1;然后执行printf( "%d,%d" , a , b ) ;输出2,1
什么是锯齿型书写格式
讲的是程序里面的锯齿型书写格式的话 应该是为了增强程序的可读性,采用缩进的书写形式。如:main(){ int x=1,a=0,b=0;switch(x){ case 0: b++;case 1: a++;case 2: a++;b++;} printf (“a=%d,b=%d\\n”,a,b);} 这个就是用锯齿型书写的,有括号缩进和对齐等。就是为了方便...
...int x=1,a=0,b=0; switch(x){ case 0:b++; case 1:a+
switch(x){ case 0:b++;case 2:a++;b++;} 你要先明白在switch里面如果没有break,是按顺序往下执行的。x=1,所以先从case 1:a++;开始 执行完后,又继续执行case 2,所以最后输出a=2,b=1
...int x=1,a=0,b=0; switch(x){ case 0: b++; case 1: a++; case 2...
a=2,b=1 x=1,进入switch语句,跳入case 1情况,执行a++,a的值变为1,b的值仍然为0。因为case 1没有做break,也就没有跳出,往下跳入case 2,执行a++和b++,a的值变为2,b的值变为1,然后。。。没有了。
帮忙讲一下这几道C语言的题,要过程啊,谢了 算的我都有点蒙了
{int x=1,a=0,b=0; \/\/初始定义 switch(x){ \/\/switch选择 ...SWITCH语句后面是不带{}这个玩意的 case0:b++ ---加个;case1:a++ ---加个;case2:a++;b++;} printf("a=%d,b=%d",a,b)---加个;} 正确的结果是a=2 b=1 先运行了CASE1 由于没BREAK 所以运行CASE...
c语言 改成锯齿形式 求帮忙。
锯齿形式其实就是缩进对其 include <stdio.h> define PRICE 12.5 mian (){ int num = 3;float total;total = num *PRICE ;printf("total = %f\\n",total);} 在比如 main(){ int x=1,a=0,b=0;switch(x){ case 0: b++;case 1: a++;case 2: a++;b++;} printf...