有人可以告诉我为什么我没有让这个代码在整个for循环中运行并且通过每个循环逐个增加变量i。我只能在程序软件上打印出来。
int i;
for(i = 0; i < 100; i++) {
switch(i) {
case 1:
case 2:
case 3:
case 4:
printf("x");
break;
case 0:
printf("y");
return 0;
break;
}
return 0;
}
答案 0 :(得分:5)
你在return 0
的第一个循环上执行case 0:
这是一个错字还是你打算中止某事?
int i;
for(i = 0; i < 100; i++) {
switch(i) {
case 1:
case 2:
case 3:
case 4:
printf("x");
break;
case 0:
printf("y");
return 0; //<----- RETURN exits the function call.
break;
}
return 0; //<-- and if it didn't exit before it will definitely exit here.
}
答案 1 :(得分:1)
因为它在第一次迭代打印y后返回0时退出。 它退出程序或功能
答案 2 :(得分:0)
您应该在打印声明后删除return。
printf("y");
>>> return 0;