vfp程序运算题目求解
来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/07/14 02:43:26
vfp程序运算题目求解
store 1 to odd,avv
store 6 to k
do proc1 with (odd),(avv),(k)
odd,k
procedure proc1
parameters a1,a2,a3
for k=1 to a3
if mod(k,2)=0
a1=a1+k
else
a2=a2+k
end if
next k
endfunc
求变量odd,avv,k
有答案称k=7
7是哪里来的
store 1 to odd,avv
store 6 to k
do proc1 with (odd),(avv),(k)
odd,k
procedure proc1
parameters a1,a2,a3
for k=1 to a3
if mod(k,2)=0
a1=a1+k
else
a2=a2+k
end if
next k
endfunc
求变量odd,avv,k
有答案称k=7
7是哪里来的
![vfp程序运算题目求解](/uploads/image/z/15491819-11-9.jpg?t=vfp%E7%A8%8B%E5%BA%8F%E8%BF%90%E7%AE%97%E9%A2%98%E7%9B%AE%E6%B1%82%E8%A7%A3)
刚开始的时候K=6
根据你的程序,在子程序中,for语句的变量实际上就是for k = 1 to 6;
也就是说在所以执行for时,k会被重新赋值,k的值会从1开始,并每循环1次其值增加1,一直到7时,这时的k值才不再符合for的条件范围,for语句才会结束,所以k=7.
for语句中的变量值在for语句结束后,其值总是比结束的哪个值大1(默认参数条件下).
再问: 麻烦再求一下odd avv......
再答: odd和avv从程序第一句赋值后就再没变过,所以值都等于1。
根据你的程序,在子程序中,for语句的变量实际上就是for k = 1 to 6;
也就是说在所以执行for时,k会被重新赋值,k的值会从1开始,并每循环1次其值增加1,一直到7时,这时的k值才不再符合for的条件范围,for语句才会结束,所以k=7.
for语句中的变量值在for语句结束后,其值总是比结束的哪个值大1(默认参数条件下).
再问: 麻烦再求一下odd avv......
再答: odd和avv从程序第一句赋值后就再没变过,所以值都等于1。