请帮vfp程序加注释

来源:百度知道 编辑:UC知道 时间:2024/06/19 14:22:58
编写程序aa.Prg

SET TALK OFF
CLEAR
input "请输入需要排列的是几个数?="to n
DIMENSION x(n) &&定义所需的数组
*输入N个数
FOR i=1 TO n
input "第"+ALLTRIM(STR(i))+"个数是?=" to x(i)
ENDFOR
?"原始输入的数列: "
*输出原始输入数列
FOR i=1 TO n
??x(i)
ENDFOR
*从大到小的排列
FOR j=1 TO 3
FOR i=1 TO n-1
IF x(i)<x(i+1)
a=x(i)
x(i)=x(i+1)
x(i+1)=a
endif
ENDFOR
endfor
*从小到大排列后的数列
?"从小到大的排列: "
FOR i=n TO 1 STEP -1
??x(i)
ENDFOR
*从大到小排列后的数列
?"从大到小的排列: "
FOR i=1 TO n
??x(i)
ENDFOR
*两端大中间小排列后的数列
?"两端大中间小的排列: "
FOR i=1 TO n STEP 2
??x(i)
ENDFOR
IF MOD(n,2)==0
FOR i=n TO 1 STEP -2
??x(i)
ENDFOR
ELSE
FOR i=n-1 TO 1 STEP -2
??x(i)
ENDFOR
endif
SET talk ON

SET TALK OFF &&关闭命令结果显示
CLEAR &&清除屏幕
input "请输入需要排列的是几个数?="to n &&输入数字,输入结果放到变量n
DIMENSION x(n) &&定义所需的数组
*输入N个数
FOR i=1 TO n &&计数循环,i范围i从0开始每次+1,直到N(刚才输入的数)
input "第"+ALLTRIM(STR(i))+"个数是?=" to x(i) &&显示"第i个数是?=",输入字符串,输入结果放到字符变量x(i)
* 比如:i=3,显示"第3个数是? =",输入结果放到x(3)中
ENDFOR &&循环结束

?"原始输入的数列: " &&显示
*输出原始输入数列
FOR i=1 TO n &&计数循环,i范围i从0开始每次+1直到N. 以下3行,依次显示刚才输入的所有[字符]
??x(i) &&??两个?是不换行显示x(i),比如:i=2则显示变量x(2)的内容
ENDFOR &&循环结束

*从大到小的排列
FOR j=1 TO 3 &&计数循环,j从1到3
FOR i=1 TO n-1 &&计数循环i从1到n-1
IF x(i)<x(i+1) &&如果...以下4行为变量内容换位,把大的换到前面
a=x(i) &&把x(i)赋值给a
x(i)=x(i+1) &&把x(i+1)赋值给x(i)
x(i+1)=a &&把x(i)赋值给a
endif
ENDFOR && 循环结束
endfor && 循环结束

*从小到大排列后的数列
?"从小到大的排列: " &&显示
FOR i=n TO 1 STEP -1 &&计数循环i从n开始每次-1直到1.也就是从后往前已达到从小到大显示