VFP中有如下程序:for i=1 to 10 / i /i=i+1 /endfor .想问一下他是怎样的一个运算方式.
VFP中有如下程序:for i=1 to 10 / i /i=i+1 /endfor .想问一下他是怎样的一个运算方式.我知道他共循环了5次,分别是1,3,5,7,9,但是就是不明白是一个怎样的过程.
最佳回答
你的程序执行结果应该是:1,3,5,7,9 原因是“ i=i+1 ”改变了“ i ”的值,从而改变了循环次数。for i=1 to 10 本来是从1循环到10,共循环10次(因默认步长为1),但是,在 i 后面加了 i=i+1,执行第一次循环时,i为1,i=i+1=2因为i已经为2了,此时,for i=1 to 10就要从3开始。同理:i为3时,i=i+1=4,i已经为4了,此时,for i=1 to 10就要从5开始。i为7时,i=i+1=8,i已经为8了,此时,for i=1 to 10就要从9开始,在这个循环语句中,for i=1 to 10i=i+1endfor在这个循环语句中(默认步长为1),赋值语句 “i=i+1”是改变循环次数的关键,当 “i=i+1”这个赋值语句给“ i ” 赋了值新值后,for i=1 to 10循环就从“ i ” 的新值后一位开始循环。如果写成“ i=i+9 ”,就只会循环1次,因循环第一次后“ i ”就为10了。如果写成“ i=1 ”,就是个死循环,因每次循环“ i ”都为1,永远到不了10,就只会永远循环下去(死循环)。
最新回答共有2条回答
-
2026-04-01 08:33:22潇洒的羊
回复你的程序执行结果应该是:1,3,5,7,9 原因是“ i=i+1 ”改变了“ i ”的值,从而改变了循环次数。for i=1 to 10 本来是从1循环到10,共循环10次(因默认步长为1),但是,在 i 后面加了 i=i+1,执行第一次循环时,i为1,i=i+1=2因为i已经为2了,此时,for i=1 to 10就要从3开始。同理:i为3时,i=i+1=4,i已经为4了,此时,for i=1 to 10就要从5开始。i为7时,i=i+1=8,i已经为8了,此时,for i=1 to 10就要从9开始,在这个循环语句中,for i=1 to 10i=i+1endfor在这个循环语句中(默认步长为1),赋值语句 “i=i+1”是改变循环次数的关键,当 “i=i+1”这个赋值语句给“ i ” 赋了值新值后,for i=1 to 10循环就从“ i ” 的新值后一位开始循环。如果写成“ i=i+9 ”,就只会循环1次,因循环第一次后“ i ”就为10了。如果写成“ i=1 ”,就是个死循环,因每次循环“ i ”都为1,永远到不了10,就只会永远循环下去(死循环)。
热门文章
- 康达学院专转本五年制
- 高考一个考场分ab卷吗
- not only but also用法
- 某物体做自由落体运动,从释放开始计时,则物体在前2s内的平均速度为______m/s,物体下落2m时的速度大小为______m/s.
- 三角函数公式大全表格
- 地理中考必背知识点2022
- 2013-2014学年小学六年级科学上学期期末考试试卷及答案
- 人教版2014-2015学年小学五年级英语第二学期期中教学质量检测试卷及答案
- 【Linux驱动开发】设备树详解(二)设备树语法详解
- 别跟客户扯细节
- 在别的城市买房子能落户吗
- 卖房前要把装修贷还完吗
- 高中政治教学提高教学效果的方法探究
- “互联网+”背景下的初中英语课堂教学改革与创新策略研究
- 2022年终止合同范本
- 租房合同范本范文
- 如何挑选土豆
- 如何挑选土鸡
