#include void main(){int x=0,y=2,z=3;switch(x){case 0 :switc
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/10/06 22:21:23
#include
void main()
{
int x=0,y=2,z=3;
switch(x)
{case 0 :switch(y==2)
{case 1 :printf("*");break;
case 2:printf("%");break;
}
case 1 :switch(z)
{case 1 :printf("$");
case 2:printf("*");break;
default :printf("#");
}
}
}
请问是怎么输出的?
void main()
{
int x=0,y=2,z=3;
switch(x)
{case 0 :switch(y==2)
{case 1 :printf("*");break;
case 2:printf("%");break;
}
case 1 :switch(z)
{case 1 :printf("$");
case 2:printf("*");break;
default :printf("#");
}
}
}
请问是怎么输出的?
它里面有一个递归调用:
当X=0时,执行case 0:进入
switch(y==2)
{case 1 :printf("*");break;
case 2 :printf("%");break;
}
因为里面只是一个比较过程,而没有所要执行的值,switch()中没有找到匹配的就按顺序执行下去,遇到case 1 :printf("*");break;输出一个“*”;跳出;
接下来执行,case 1:switch(z),(说明:z=3)
找到case 3,而现在没有只能找最后一个default:printf("#");
所以最后只执行default:printf("#");
最后输出 * #;
完毕.理解否?
当X=0时,执行case 0:进入
switch(y==2)
{case 1 :printf("*");break;
case 2 :printf("%");break;
}
因为里面只是一个比较过程,而没有所要执行的值,switch()中没有找到匹配的就按顺序执行下去,遇到case 1 :printf("*");break;输出一个“*”;跳出;
接下来执行,case 1:switch(z),(说明:z=3)
找到case 3,而现在没有只能找最后一个default:printf("#");
所以最后只执行default:printf("#");
最后输出 * #;
完毕.理解否?
#include void main(){int x=0,y=2,z=3;switch(x){case 0 :switc
#include void main() { int x=2,y; switch(x) { case 1:y=x ; b
#include void main() { int x=0,y=1,z=2; if(!x) z=-1; if (y)
#include void main( ) { int x=1,y=0,a=0,b=0; switch(x) { cas
#include main() { int x=1,y=0,a=0,b=0; switch(x) { case
#include main() { int x=1,y=0,a=0,b=0; switch(x) { case 1: s
#include void main() { int x=0,y=0,z=0; ++x||++y&&++z; print
# include void p(int *x,int y){ ++*x; y=y+2; } void main() {
void main() { int x=0,y=5,z=3; while(z-->0&&++x
#include void f(int*x,int y) {*x=y+1;y=*x+2;} main() {int a=
x=y==z?#include"stdio.h" void main() { int x,y,z; x=2; y=x+2
#include void main() { int k=5,n=0; while(k>0) {switch(k) {d