多语言展示
当前在线:447今日阅读:126今日分享:42

程序结构操作(二)

会用调试器来分析程序的执行流程。
方法/步骤

使用调试器来跟踪该程序的执行情况,具体步骤为:(1)单击“工具”菜单中的“调试器”菜单项,打开“调试器”窗口。(2)在调试器窗口中单击“文件”菜单中的“打开”菜单项,打开要跟踪的程序,如sum.prg。(3)执行“调试”菜单中的“单步跟踪”命令,来跟踪程序的执行,并观察分析“局部”窗口中变量值的变化情况。5.在程序功能不变的情况下,用FOR循环来改写第4题sum.prg,并对比FOR循环与DO While循环的区别。参考代码如下,读者也可以自己写出类似的程序。S=0For k=1 to 10 step 1    S=S+kEndfor? “S=”,S6.编写程序JC.PRG,程序功能是求5的阶乘(5!=1*2*3*4*5),参考代码如下。Y=1                   &&存放阶乘结果的变量要赋初值为1FOR X=1 TO 5  step 1  && step 1 可省略  Y=Y*X           &&累计变量X的乘积到变量Y中。ENDFOR? '5!=',Y注:请打开调试器,来跟踪该程序的执行情况。7.参照上一题的程序,编写程序求S=1!+2!+3!+4!+5!的值。S=0Y=1FOR X=1 TO 5Y=Y*X         &&循环执行过程中,Y中存放的分别是1、2、3、4、5的阶乘值S=S+Y         &&累加Y中存放的分别是1、2、3、4、5的阶乘值ENDFOR? 'S=',S8.用调试器跟踪下面程序的执行情况,并写出运行结果。Store 0 to x, y, s1, s2, s3Do while x<10x=x+1Do case    Case int(x/2)=x/2     &&判断X是偶数 S1=s1+x/2        &&S1中累加的是2、4、6、8、10几个数和的一半Case mod(x,3)=0      &&判断X是3的倍数S2=s2+x/3        &&S2中累加的是3、9两个数和的三分之一Case x%2!=0          &&判断X不是偶数s3=s3+1          &&S3存放的是非偶数的个数(1、5、7)EndcaseEnddo? s1,s2,s3运行结果:  15.0000      4.0000       3  9.找出100—900之间的“水仙花数”(指一个三位数,其各位数字的立方和等于该数本身,如:153=13+53+33),下面是部分代码,调试该程序。*****SXH.PRG求水仙花数****CLEARFOR K=100 TO 999A=INT(K/100)               &&取百位数字B=INT((K-100*A)/10)        &&取十位数字C=MOD(K,10)                &&取个位数字,看看取十位是否还有别的方法?IF  k=A**3+B**3+c**3      ? KENDIFENDFOR 运行结果:153,370,371,40710.用scan-endscan循环结构来显示zgda表中所有女讲师的记录信息。USE ZGDASCAN  for 性别=“女” and 职称=“讲师”      DISPLAYENDSCAN11、用3种循环显示ZGDA.DBF的所有记录,请对比3种循环。(1)用SCAN循环显示ZGDA.DBF的所有记录:USE ZGDASCAN     DISPLAYENDSCAN(2)用DO循环显示ZGDA.DBF的所有记录:USE ZGDADO WHILE NOT EOF()DISPskipENDDO(3)用FOR循环显示ZGDA.DBF的所有记录:USE ZGDAK=RECCOUNT()FOR J=1 TO KDISPskipENDFOR

推荐信息