求助关于DELPHI学习中一个的问题
发布网友
发布时间:2024-03-01 05:54
我来回答
共4个回答
热心网友
时间:2024-08-17 09:41
程序写错了:
s:=s+1;
i:=i+1;
应改为
s:=s+i;
i:=i+1;
开始时i的值是1;
i<=10 循环
执行s:=s+1; 后 i 的值加到了s中,s=1;
执行i:=i+1; 后 i 的值加1,值为2;
i<=10 再次循环:
执行s:=s+1; 后 i 的值加到了s中,s=3=1+2;
执行i:=i+1; 后 i 的值加1,值为3;
i<=10 再次循环:
执行s:=s+1; 后 i 的值加到了s中,s=6=1+2+3;
执行i:=i+1; 后 i 的值加1,值为4;
……
……
i<=10 再次循环:
执行s:=s+1; 后 i 的值加到了s中,s=45=1+2+4+5+6+7+8+9;
执行i:=i+1; 后 i 的值加1,值为10;
i<=10 再次循环:
执行s:=s+1; 后 i 的值加到了s中,s=55=1+2+4+5+6+7+8+9+10;
执行i:=i+1; 后 i 的值加1,值为11;
i>10 不符合条件,不再次循环
热心网友
时间:2024-08-17 09:48
就是累加
一开始学的时候我也不明 我想你肯定是不明白i一开始是1执行 i : = i+1 后就不明白了吧?每次执行这个
i中存储的都是上一次的值
你看程序
while i <=10 do
begin
s : = s+i;
i : = i+1;
end;
第一次执行循环的时候s=s+i (初始条件i=1; s=0)
s就等于s=0+1 ,s变成1;
后执行 i : = i+1 这样 i=1+1 i变成2
第二次执行的时候 i是2 s是1
s=s+i s=1+2 s变成3
后执行 i : = i+1 执行前i是上次的2 执行后 i变成3
。
。
。
明白了吗?就是累加的意思 我先学的c后来开始学delphi 建议
你看看pascal 程序设计 或c语言程序设计 语言都 是相通的
热心网友
时间:2024-08-17 09:46
这个i:=i+1就是改变表达式的值。
因为while是判断i的值来判断是否进行循环。
当i+1大于10的时候,就退出循环了。
热心网友
时间:2024-08-17 09:42
i: = i+1意思就是i=i+1 它的作用就是控制循环的次数,使最大循环次数为10
write( i - 1,' =' ); 输出i-1的结果 最后一次循环执行完后i=11,我想写这一句的目的使想把循环的次数打印出来吧