第07章结构化程序设计讲述.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
选择题 10. 关于多重循环,以下概念错误的是(  )。 A. 外层循环一轮,内层循环一次 B. 一般不要在内循环中随意改变外循环的控制变量或指针位置,以免破坏原先设定的外循环控制 C. 可在内层循环的控制中引入外层循环直接相关的变量,以实现多个控制条件 D. 各种类型的循环语句可以相互嵌套,也可以与分支语句嵌套,形成复杂的程序结构 * */73 选择题 11. 下列程序执行以后,内存变量 y 的值是_____。 x=34357 y=0 DO WHILE x>0 y=x%10+y*10 x=int(x/10) ENDDO A)3456 B)34567 C)7654 D)76543 选择题 12.下面程序计算一个整数的各位数字之和。在下划线处应填写的语句是( )。 SET TALK OFF INPUT ”x=” TO x s=0 DO WHILE x!=0 ?? s=s+MOD(x,10) ????_______________________              ENDDO ?s SET?TALK?ON A. x=int(x/10)?? B. x=int(x%10)?? C. x=x-int(x/10)??? D. x=x-int(x%10) 谢谢! 7.3.3 循环结构 1. 条件循环结构 2. 步长型循环结构 3. 表扫描循环结构 4. 循环嵌套 * */73 2. 步长型循环结构 格式: FOR VarName = nInitialValue TO nFinalValue [STEP nIncrement] Commands ENDFOR | NEXT * */73 流程: 2. 步长型循环结构 方式1: INPUT 请输入数值N: TO n f = 1 FOR i = 1 TO n f = f * i ENDFOR ?“N!=”,f * */73 方式2: INPUT 请输入数值N: TO n f = 1 FOR i = n TO 1 STEP -1 f = f * i ENDFOR ?N!=,f *求N!,用FOR循环实现 7.3.3 循环结构 1. 条件循环结构 2. 步长型循环结构 3. 表扫描循环结构 4. 循环嵌套 * */73 3. 表扫描循环结构 格式: SCAN [Scope] [FOR lExpression1] [WHILE lExpression2] [Commands] ENDSCAN 功能: 在当前打开的数据表中的指定范围(Scope)内查找符合条件的记录,若找到,将记录指针指向该记录,然后执行循环体,到达ENDSCAN语句时返回循环头,再次查找符合条件的记录,直到在指定范围内找不到满足条件的记录为止。如果不指定范围Scope,则对整个表中的所有记录进行扫描处理。 对于FOR条件语句,将对Scope所限定的范围内的每一条记录进行一一判断,满足条件则执行循环体;对于WHILE条件语句,若下一条记录不满足条件,则停止循环。 * */73 3. 表扫描循环结构 说明: (1)使用该结构必须先打开要扫描的数据表。 (2)当每次循环执行到ENDSCAN或LOOP语句时,记录指针自动下移,如果已到文件尾,则退出循环,否则继续循环。因此,循环体中不需要SKIP语句。 * */73 3. 表扫描循环结构 用表扫描循环实现前述中逐条显示除“李”姓以外的所有学生记录,并统计“李”姓学生的个数的程序(方式一)。 SET EXACT OFF 设置不精确比较 OPEN DATABASE student USE students N = 0 SCAN IF 姓名 = 李 N = N + 1 * SKIP(SCAN循环会自动移动记录指针) LOOP ENDIF DISPLAY * SKIP(同上) ENDSCAN CLOSE DATABASES ?“李姓学生个数N=”,N * */73 3. 表扫描循环结构 用表扫描循环实现前述中逐条显示除“李”姓以外的所有学生记录,并统计“李”姓学生的个数的程序(方式二)。 SET EXACT OFF 设置不精确比较 OPEN DATABASE student USE students N = 0 SCAN FOR .NOT. 姓名=李 扫描条件 DISPLAY N = N + 1 累加不姓李的学生数 ENDSCAN GO BOTTOM N=RECNO()-N

文档评论(0)

70后老哥 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档