ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:18.61KB ,
资源ID:9029136      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9029136.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第九章程序二.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第九章程序二.docx

1、第九章程序二第九章 程序设计基础(二)三种基本结构顺序、分支、循环一、分支语句:1、 IF语句单向选择: IF 条件 双向选择: IF 条件执行语句 执行语句 ENDIF ELSE执行语句ENDIF例1:用户输入数据表文件名,判断它存在否,如果存在则打开数据表文件并显示表中的全部记录。clearaccept 请输入数据表文件名: to heng &想想可不可以用inputif file(heng+.dbf ) &了解file()的使用方法use &heng &想想这儿为什么要用&代换 listelse ?sorry,文件不存在.endifclose all &关闭所有打开的表,如果不涉及多工作

2、区,可以只使用useIF语句的嵌套:例2:将用户输入的小写英文字母转化成大写CLEARACCEPT “请输入1个字母:” TO STR1IF STR1=a AND STR1=A AND STR1=Z?SPACE(40)+STR1ELSE “你输入的不是英文字母”ENDIFENDIF二、多向选择:(多路选择)DO CASE CASE CASE OTHERWISE / 其它情况ENDCASE说明:OTHERWISE 可以没有.例3:邮局负责邮购小物品规则如下:50公里及以内收取额外金额5元,50-100公里收取10元,100-200公里收取20元,200-500公里收取40元,其余一律收取50元。

3、CLEARINPUT “请输入您想邮购物品的路程(公里数): ” TO XDO CASE CASE X50 AND X100 AND X200 AND X=500 Y=40 OTHERWISE Y=50ENDCASE? 您需要付款: ,Y,元人民币三、循环语句:1、 DO WHILE 条件 语句序列 LOOP &提前结束本次循环语句序列EXIT &退出循环体 ENDDO 要退出循环,需要条件为假的时候(条件=.F.时)执行过程:例4clearn=1sum1=0do while n=100 sum1=sum1+n n=n+1enddo?”1+2+3+.100的和为:”,str(sum1,4)ca

4、ncel例5cleari=1do while i=5?space(6-i) ?* ? i=i+1enddocancel 2、 计数循环:FOR 循环变量=初值 TO 终值 STEP 步长语句序列 LOOP &提前结束本次循环语句序列EXIT &退出循环ENDFOR / NEXT执行过程:例6:求1100的和SUM=0FOR I=1 TO 100SUM=SUM+IENDFOR?1100的总和为:,SUM使用DO WHILE 实现:SUM=0I=1DO WHILE I0 IF Y0 EXIT QUITENDIF ENDIFENDDO ENDDO如果Y0,则退出本循环 如果Y0,则退出程序,退出VF

5、DO WHILE .T. DO WHILE .T.IF Y0 IF Y0 RETURN CANCELENDIF ENDIFENDDO ENDDO如果Y0,则退出程序返回上层 如果Y0,则退出程序,回到VF中例7:三种方法实现显示出全部的男生。使用DO WHILE 循环 :CLEARCLOSE ALLUSE 学生DO WHILE NOT EOF() IF 性别=男DISP ENDIF SKIPENDDOCLOSE ALL使用FOR 循环 :CLEARCLOSE ALLUSE 学生COUNT TO XGO TOPFOR I=1 TO XIF 性别=男 DISPENDIFSKIPENDFORCLOS

6、E ALL使用SCAN循环 :CLEARCLOSE ALLUSE 学生SCAN FOR 性别=男DISPENDSCANCLOSE ALL例8 (LOOP语句的使用方法:提前结束本次循环)CLOSE ALLCLEARUSE学生DO WHILE NOT EOF()DISP WAIT 你想修改本记录吗?(Y/N): TO XIF X=N OR X=n SKIPLOOPENDIFEDITSKIPENDDOCLOSE ALL程序执行到WAIT语句后,如果用户输入的是N或n,那么就LOOP(也就跳过本次循环,不执行后面的EDIT)例9:通过键盘输入三角形的边长,若边长正确,立即在屏幕上显示三角形的面积,若

7、边长不正确,重新输入边长,若输入的边长中任意一边为0则程序立即结束。CLEAR?”现在计算三角型的面积,如果想退出程序请输入0。”DO WHILE .T.INPUT “请输入边长a:” TO AINPUT “请输入边长b:” TO BINPUT “请输入边长c:” TO CIF A=0 OR B=0 OR C=0 ?结束 RETURNENDIFIF A+B=C OR A+C=B OR B+C570 DISPENDSCANCLOSE ALL例13 : 用户可以循环输入并查找入校总分,直到输入的是负数就退出.CLEARCLOSE ALLUSE 学生INPUT “请输入你要查找的入校总分,输入负数则

8、退出: ” TO XDO WHILE X=0SCAN FOR 入校总分=X DISPENDSCANINPUT “请输入你要查找的入校总分: ” TO XENDDO实验:循环插入新记录,并输入数据。答案见210.41.166.233中省等级考试辅导资料:VF程序部分。例14:现有表STUDENT.DBF和学生成绩.DBF ,编写程序,对两张表建立关联, 用户可以循环查询: 输入某个同学的姓名后,该程序能够修改关于他所选课程的分数. (此题仅理解)其中STUDENT.DBF信息如下:(学号 C(6), 姓名 C(8),性别 C(2),出生日期 D,高考成绩 N(6,1)学生成绩.DBF信息如下:(

9、学号 C(6),课程号 C(3),分数 N(2)思路: 先建立好关联, 因为STUDENT对学生成绩是一对多的关系,所有最好将STUDENT做子表,就不用SET SKIP TO命令了. 然后通过STUDENT中的姓名获得学号,再在表学生成绩.dbf中进行查找和课程分数的修改.CLEARCLOSE ALLSELE 2USE STUDENTINDEX ON 学号 TAG XHSELE 1USE 学生成绩SET RELA TO 学号 INTO B &建立关联,学生成绩作为父表DO WHILE .T. ACCEPT “请输入你想查询的人姓名” TO NAME SELE 2 LOCATE FOR 姓名=

10、NAME &先在表STUDENT中查找姓名 IF FOUND() NUM=学号 &获得姓名对应的学号SELE 1 &转换到表学生成绩中LOCATE FOR 学号=NUM &根据刚才姓名对应的学&学生成绩中循环找,因为一个学生可能有几个课程成绩 DO WHILE NOT EOF()4,8 SAY 学号 4,20 SAY B.姓名 4,34 SAY 课程号 6,10 SAY 分数 GET 分数READCLEARCONTINUE ENDDOELSE?SORRY , NO FIND . ENDIFWAIT “你想继续查询修改数据吗?(Y/N): ” TO ASKIF ASK=n OR ASK=N CL

11、EAR LIST 学号,B.姓名,课程号,分数 CLOSE ALL CANCELENDIFCLEARENDDO编写程序,对于学生.dbf能够在程序末尾循环插入新记录(要求:必须使用 行,列 say . get . 输入数据)CLEARCLOSE ALLUSE 学生DO WHILE .T. APPE BLANK 5,20 SAY 学号 GET 学号 5,40 SAY 姓名 GET 姓名 7,20 SAY 性别 GET 性别 7,30 SAY 出生年月 GET 出生年月 9,20 SAY 入校总分 GET 入校总分 READ WAIT 你想继续插入新记录吗?(Y/N) : TO X IF X=N

12、OR X=n EXIT ENDIF CLEARENDDOCLEARLISTCLOSE ALL编写程序,该程序能够顺序修改表学生.DBF中的所有数据。 (要求:必须使用 行,列 say . get . 进行数据修改)CLEARCLOSE ALLUSE 学生DO WHILE .T. if eof() exit endif 5,20 SAY 学号 GET 学号 5,40 SAY 姓名 GET 姓名 7,20 SAY 性别 GET 性别 7,30 SAY 出生年月 GET 出生年月 9,20 SAY 入校总分 GET 入校总分 READ WAIT 你想继续修改记录吗?(Y/N) : TO X IF X=N OR X=n EXIT ENDIF CLEAR SKIPENDDOCLEARLISTCLOSE ALL例4.39 打印九九表(嵌套循环)clearset talk offfor I=1 to 9 ?str(I,2)endfor?for j=1 to 9 for k=1 to j?str(j*k,2) endfor?endforcancel

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1