简单C++问题

[复制链接]
查看11 | 回复3 | 2008-12-3 12:01:04 | 显示全部楼层 |阅读模式
以下程序的输出结果是 B
#include

main()
{ inti=0,a=0;
while(i<20)
{for(;;)
{ if((i%10)==0)break;
else
i--;
}
i+=11;
a+=i;
}
printh("%d\n",a);
}
A) 21
B) 32
C) 33
D) 11
我怎么算的结果是 31 ?????能稍微讲解下步骤吗?
我是由 20+11 得到31的,我中间是不是循环错了,刚学C,能不能把你的步骤稍微详细点,谢谢

回复

使用道具 举报

千问 | 2008-12-3 12:01:04 | 显示全部楼层
第一次循环:
while开始i=0;
for开始i=0;
for结束i=0;
while结束i=11,a=11;第二次循环:
while开始i=11;
for开始i=11;
for结束i=10;
while结束i=10+11=21
a=11+21=32;...
回复

使用道具 举报

千问 | 2008-12-3 12:01:04 | 显示全部楼层
答案是32第一次i=11 a=11第二次i=21 a=32...
回复

使用道具 举报

千问 | 2008-12-3 12:01:04 | 显示全部楼层
11+21=32;在仔细算算吧!你得补补数学了!...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行