一道C的题,帮忙分析一下,答案是668977
#include<stdio.h>main(){intc;while((c=getchar())!='\n'){switch(c-'2'){case0:case1:put...
#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);
default :putchar(c+2);break;
}
} printf("\n");
}
是呀,输入为2473,输出为668977,请帮忙解释具体点,比如为什么当输入为2时,输出为66?输入为4时,输出为8,输入为7时,输出为9,输入为3时输出为77,本人为初学者,还请多赐教,不胜感激! 展开
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);
default :putchar(c+2);break;
}
} printf("\n");
}
是呀,输入为2473,输出为668977,请帮忙解释具体点,比如为什么当输入为2时,输出为66?输入为4时,输出为8,输入为7时,输出为9,输入为3时输出为77,本人为初学者,还请多赐教,不胜感激! 展开
展开全部
C的数值要具体输入的 你题目是不是没写完整?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看'2'
switch(c-'2') //'2'-'2'=0
{ case 0:
case 1:putchar(c+4);//输出'6'
case 2:putchar(c+4);break; //输出'6'跳出去
case 3:putchar(c+3);
default :putchar(c+2);break;
}
看'4'
switch(c-'2') //'4'-'2'=2
{ case 0:
case 1:putchar(c+4);
case 2:putchar(c+4);break; //输出'8'跳出去
case 3:putchar(c+3);
default :putchar(c+2);break;
}
看'7'
switch(c-'2') //'7'-'2'=5
{ case 0:
case 1:putchar(c+4);
case 2:putchar(c+4);break;
case 3:putchar(c+3);
default :putchar(c+2);break;//输出'9'跳出去
}
看'3'
switch(c-'2') //'3'-'2'=1
{ case 0:
case 1:putchar(c+4);//输出'7'
case 2:putchar(c+4);break;//输出'7'跳出去
case 3:putchar(c+3);
default :putchar(c+2);break;
}
switch ..case..一定要有break;才会跳出,没有break;就一直往下运行
switch(c-'2') //'2'-'2'=0
{ case 0:
case 1:putchar(c+4);//输出'6'
case 2:putchar(c+4);break; //输出'6'跳出去
case 3:putchar(c+3);
default :putchar(c+2);break;
}
看'4'
switch(c-'2') //'4'-'2'=2
{ case 0:
case 1:putchar(c+4);
case 2:putchar(c+4);break; //输出'8'跳出去
case 3:putchar(c+3);
default :putchar(c+2);break;
}
看'7'
switch(c-'2') //'7'-'2'=5
{ case 0:
case 1:putchar(c+4);
case 2:putchar(c+4);break;
case 3:putchar(c+3);
default :putchar(c+2);break;//输出'9'跳出去
}
看'3'
switch(c-'2') //'3'-'2'=1
{ case 0:
case 1:putchar(c+4);//输出'7'
case 2:putchar(c+4);break;//输出'7'跳出去
case 3:putchar(c+3);
default :putchar(c+2);break;
}
switch ..case..一定要有break;才会跳出,没有break;就一直往下运行
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询