C语言switch选择求值问题

来源:百度知道 编辑:UC知道 时间:2024/06/02 16:37:47
#include <stdio.h>
main()
{ int c;
while((c=getchar())!='\n')
{ switch(c-'2')
{case 0:
case 1:putchar(c+4);
case 2:putchar(c+4);break;
case 3:putchar(c+3);
case 4:putchar(c+2);break;
}
}
printf("\n");
}

请教达人这道题等于多少?希望有点分析,谢谢。

A.668977 B.668966 C.6677877 D.6688766

本人才做了这道题,是c二级的一道题,输入时2473
while((c=getchar())!='\n')getchar()一次只能接收一个字符,因此第一次接收2,第二次接收4,以此类推
当接收2时, switch(c-'2')中的c-‘2’=0因此入口点为0,case 1输出6.case 2 输出6,再执行break退出循环。。。。。

你连输入什么都没给,怎么知道输出是什么呀?

就是