计算机二级 C语言
发布网友
发布时间:2022-05-01 17:26
我来回答
共1个回答
热心网友
时间:2022-06-20 06:54
选A 668977
#include <stdio.h>
main()
{ int c;
while((c=getchar())!='\n') //输入2473 ,则c为相应的字符 '2’、'4’、'7’、'3’
{ switch(c-'2') // c-'2' 后,依次为 0,2,5,1
{ case 0: //c为'2‘时的进入点
case 1: putchar(c+4); //c为'3‘时的进入点
case 2: putchar(c+4);break; //c为'4‘时的进入点
case 3: putchar(c+3);
default: putchar(c+2);break; //c为'7‘时的进入点
}
}
switch 语句在相应的case N 进入后,依次向下执行,直到switch语句结束或break。
所以当C为'2'时,依次执行
case 0:
case 1: putchar(c+4);
case 2: putchar(c+4);break; 此时输出2个字符'6'。
所以当C为'4'时,执行 case 2: putchar(c+4);break; 此时输出字符'8'。
类似的,可得出结果。