:#include <stdio.h> main() { int i; for(i='a';i<'f';i++,i++) printf("%c",i-'a'+'A'); printf("\n")}

:#include<stdio.h>main(){inti;for(i='a';i='f';i++,i++)prinft("%c",i-'a'+'A');printf("... :#include <stdio.h> main() { int i; for(i='a';i='f';i++,i++) prinft("%c",i-'a'+'A'); printf("\n")}

怎么答案是ABCDE? 求详解。
展开
 我来答
L_o_o_n_i_e
推荐于2018-03-15 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5257万
展开全部
式子有错,应当这样:
#include <stdio.h>
main() {
int i;
for(i='a';i<'f';i++)
printf("%c",i-'a'+'A');
printf("\n");
}
i 循环 从 'a' 到 'f' , 步长为 1,也就是 i 依次为 'a' 'b' 'c' 'd' 'e'
循环 是输出表达式 i-'a'+'A' 的值。
i = 'a' 时 'a'-'a' 得 0, 表达式的值 是 0+'A' = 'A'
i = 'b' 时 'b'-'a' 得 1, 表达式的值 是 1+'A' ='B'
i = 'c' 时 'c'-'a' 得 2, 表达式的值 是 2+'A' = 'C'
i = 'd' 时 'd'-'a' 得 3, 表达式的值 是 3+'A' = 'D'
i = 'e' 时 'e'-'a' 得 4, 表达式的值 是 4+'A' = 'E'
printf("%c", 按 %c 格式输出, 'A' 是 A , 'B' 是 B .....'E'是 E
答案是ABCDE
追问
我也知道如果是一个i++  就是那个答案,但是  两个i++就 不是那个答案啊,我看了题,的确是两个 i++
追答
两个i++  就是
for(i='a';i<'f';i=i+2)
答案是ACE.
kjyqxz9jh
2011-03-25 · TA获得超过1825个赞
知道小有建树答主
回答量:2044
采纳率:50%
帮助的人:908万
展开全部
下break和continue的含义,break是指跳出当前循环体(注意当前循环中后面的语句不执行),然后继续执行外一层循环下面的语句;continue是指跳出当前循环体中的此次循环(当前循环后面的语句不再执行),但是接着进行下一次循环,比如当前循环控制变量i=0,接着从i=1开始,它与break的区别就是break是直接跳出当前循环体了。
回头看程序,i=0和1时,j循环至5就会break,然后进入i<2,continue,后面就不再执行;i=2时,j循环至5就break,然后执行printf("%d",j),输出5;然后i=3,j循环至5break,然后进入i>2,break,跳出循环体,执行printf("%d",i),输出3。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sun_siliang
2011-03-24 · TA获得超过2.6万个赞
知道大有可为答主
回答量:9913
采纳率:100%
帮助的人:4673万
展开全部
#include <stdio.h>
main()
{
int i;
for(i='a';i<'f';i++,i++)
printf("%c",i-'a'+'A'); //这个语句等价于printf("%c",i-32);
printf("\n")
}

//printf("%c",i-32);//i-32就是将小写字母转换为大写字母,小写字母的ASCII码比大写字母的ASCII码大32,请查ASCII码表。
追问
但是 是两个 i++啊? 怎么解释。
追答
两个i++的话,答案应该是ACE,不可能是ABCDE。这个结论我亲自测试过了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
坏饿
2011-03-24 · 超过14用户采纳过TA的回答
知道答主
回答量:91
采纳率:0%
帮助的人:39万
展开全部
i-'a'+'A'的意思就是把小写字母换成大写的
追问
我知道  是把小心变成大写,但是这里是两个i++答案就不应该是那么多啊。
追答
要是两个i++答案就是ACE了,不要尽信答案
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
修姮娥9G
2022-10-22
知道答主
回答量:1
采纳率:0%
帮助的人:315
展开全部
#include<stdio.h>
int main()
{
int a[3]={1,2,3},i;
scanf( "%d%d%d",&a);
for ( i = 0; i < 3; i++)
printf( "%d", a[i] );
return(0);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式