请教C程序

来源:百度知道 编辑:UC知道 时间:2024/06/05 18:06:05
int n='c';
switch(n++)
{default :printf("error");break;
case'c':
case'C':printf("pass");
case 'd':
case 'D':printf("warm");}
运行结果是什么?为什么?
n++对程序有何影响?

passwarm
第一次n++这个表达式的值为"c",(注意:“++”在变量之后时,变量值+1,而表达式的值不变)所以执行“case'c':”而 switch-case结构规定从找到合适的case开始执行到大括号结束,所以输出passwarm

C,D没有加break,如果是c,会一路运行下去,显示pass warm,其他正常

好像是个成绩化分优劣的程序吧?
是C就通过,是D就警告.
忘得差不多了,不好意思.