C语言程序运行结果分析:switch语句和循环的交互
程序的运行结果是'E'。
在switch语句中,当a='A'时,执行a++,a变为'B',然后跳出switch语句。接着循环继续,a='B',执行++a,a变为'C',跳出switch语句。再次循环,a='C',执行a=a+1,a变为'D',由于没有break语句,继续执行default语句,执行a=a+2,a变为'F'。但是循环条件为a<'D',因此循环结束时a的值为'E'。
注意程序中最后一个分号应该是英文分号,应改为英文分号才能正确编译。
代码示例:
#include <stdio.h>
int main() {
char a='A';
for(;a<'D';) {
switch(a+1) {
case 'A': a++; break;
case 'B': ++a; break;
case 'C': a=a+1;
default: a=a+2;
}
printf("%c\n",a);
return 0;
}
}
原文地址: https://www.cveoy.top/t/topic/mXBx 著作权归作者所有。请勿转载和采集!