跪求大神指教指教啊。急急急急急急急急急急急急急急急 5

亲帮我讲讲行吗main(){intc;while((c=getchar())!='\n'){switch(c-'2'){case0:case1:putchar(c+4);... 亲帮我讲讲行吗
main()
{int c;
while((c=getchar())!='\n')
{switch(c-'2')
{case 0:
case 1:putchar(c+4);
case3:putchar(c+4);break;
default :putchar(c+2);break;
}
}printf("\n");
}
从第一列开始输入数据:2473<cr>输出结果是多少。亲亲们,我这个不会做,我不懂怎么样将2473化成数据啊。。还是说我的思路错了呢。。。
展开
 我来答
xoaxa
2014-01-24 · TA获得超过8613个赞
知道大有可为答主
回答量:6415
采纳率:72%
帮助的人:3948万
展开全部
输入2时,c = '2'(是字符,不是数字),'2' - ‘2’ = 0,从case 0开始执行,两次输出字符 ‘2’ + 4 = ‘6’,就是连续两个6被输出。
输入4时,c = '4','4' - '2' = 2,没有匹配的case 分支,执行default,输出'4' + 2,即‘6’
输入7时,c = '7','7' - '2' = 5,没有匹配的case 分支,执行default,输出'7' + 2,即’9‘
输入3时,c = '3','3' - '2' = 1,从case 1开始执行,两次输出字符 ‘3’ + 4 = ‘7’,就是连续两个7被输出。
由此得出,该代码对输入2473的输出是:666977
锕钚3G
2014-01-24 · 超过25用户采纳过TA的回答
知道答主
回答量:58
采纳率:0%
帮助的人:67.5万
展开全部
你的目的是什么呢?或者说你的代码是想干什么用的?
追问
就是这个题怎么做呀
就是这个题怎么做呀
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式