作业帮 > 综合 > 作业

VFP程序求解.高手请来看看并逐一解释.

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/06/25 11:59:27
VFP程序求解.高手请来看看并逐一解释.
set talk off
store 1 to i ,j
for n=1 to 4
@i,j+1 say 'ab'
j=j+1
endfor
return
为什么结果为AAAAb
看不懂了.
VFP程序求解.高手请来看看并逐一解释.
set talk off * 关闭交互信息
store 1 to i ,j * 对i,j初始化为1
for n=1 to 4 *循环变量n,循环4次
@i,j+1 say 'ab' *在屏幕的第i行、j列,显示ab
j=j+1 *j变为j+1,实际是把屏幕光标移到第j+1那一列,就是行未变,列后移一位
endfor *循环结束
return *程序返回

所以执行的结果就是,aaaab,每一个循环把前一个b擦掉了,出现了4a和一个b
再问: 它里面哪个命令说擦去B了????没看出来额。。。循环变量n是什么?n在程序里面是什么作用???
再答: 循环一次,在i,j这个屏幕的位置显示一个ab,因为i不变,j变成j+1,每循环一次,写ab的起始列位置向屏幕右侧偏移一位,造成写了4遍ab,但是每一次从前一次的后一个位置写起。就是写的abababab,因为j+1,没有错开,造成在屏幕上后边的压了前一个的第二个字母。
如果你把程序j+1改为j+2,就成了abababab;
如果把say 'ab'换成'abc',就成了aaaabc;试一下。