Visual FoxPro9.0学到程序设计这章遇到的问题,读程序写结果

阅读程序,写计算结果,拜托各位高手了,我知道这是很简单的,但上课没认真听,推出的结果不知道对不对,老师又不讲..(1)n=3s=''''(四个单引号)dowhilen>1... 阅读程序,写计算结果,拜托各位高手了,我知道这是很简单的,但上课没认真听,推出的结果不知道对不对,老师又不讲..
(1)n=3
s=''''(四个单引号)
do while n>1
x=str(n,1) [str是字符型转换为数值型函数]
s=s+x
n=n-1
enddo
?s,substr(s,1,n) [substr是取字串函数]

(2)x=9
do while .t.
x=x-3
if x<0
exit
endif
?x*x
enddo
(3) s='ABCDEFG'
P=1
do while P<7
??substr(s,7-P,1)
P=P+1
enddo
展开
 我来答
baitia0
推荐于2016-05-16 · TA获得超过2505个赞
知道大有可为答主
回答量:2275
采纳率:80%
帮助的人:2055万
展开全部
s=''''(四个单引号)

这句就不对, 肯定是一对双引号!!!

1, 32 3
2, 36
9
0
3, FEDCBA
更多追问追答
追问
额,可能老师打错了吧。能不能麻烦每题给我说说过程?谢谢,我有点不懂
追答
1,  n从3开始依次减1,循环当n=1时就不执行了,因此n的值是3和2
x是n的字符型,
s是将n的值依次组装起来,结果就是'32'
substr(s,1,n) 就是substr('32',1,1), 最后的n值是1,当运行到这句do while n>1时,因为不符合条件退出循环, 因此最后的n值就定格为1

2,x从9开始依次减3: 9,6,3,0,-3......,但下面的代码限制的范围:
if x<0
exit
endif
因此x的取值是 9,6,3,0
每次输出的x*x,无需多说了.

3,P从1开始,一次加1,但这句限制范围:
do while P<7

因此P的取值为: 1,2,3,4,5,6
输出的函数substr(s,7-P,1), 根据p的范围确定7-p的值依次是6,5,4,3,2,1

你分别代进去取值就行了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式