pascal程序运行 5

程序:programhhh;vara:array[1..10]ofinteger;i,j:integer;beginfori:=1to10dobegina[i]:=a[i... 程序:
program hhh;
var
a:array [1..10] of integer;
i,j:integer;
begin
for i:=1 to 10 do
begin
a[i]:=a[i]+i;
foe j:=1 to i do
a[j]:=a[j]+j;
end;
for i:=1 to 10 do
write(a[i],' ');
end.

输出:
11 20 27 32 35 36 35 32 27 20

为什么输出的结果是这样?求详细讲解,谢谢!
展开
 我来答
听不清啊
高粉答主

2015-08-28 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
program hhh;
var
a:array [1..10] of integer;
i,j:integer;
begin
for i:=1 to 10 do //循环10轮
begin
a[i]:=a[i]+i; //第i个元素加1次i(循环的原因)
for j:=1 to i do
a[j]:=a[j]+j; //第j个元素加(11-i)j(前面的元素加的次数多)
end;
for i:=1 to 10 do
write(a[i],' ');
end.

总的结果:
a[1]=11*1
a[2]=10*2
a[3]=9*3
a[4]=8*4
…………
a[9]=3*9
a[10]=10*2
更多追问追答
追问
问一下j是做什么的?可以把a[1]到a[10]的运算全部展开吗?
追答
j是内部循环的控制变量。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式