网站大量收购闲置独家精品文档,联系QQ:2885784924

第章_结构化程序设计基础和C语言的控制结构(fb).ppt

第章_结构化程序设计基础和C语言的控制结构(fb).ppt

  1. 1、本文档共85页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第章_结构化程序设计基础和C语言的控制结构(fb).ppt

2.4.2 continue语句 例2-24 编程序实现功能:检测从键盘上输入的以换行符结束的字符流,统计非字母字符的个数。 分析:通过循环依次检查输入字符,若为字母且不是换行符时,使用continue提前结束本轮循环;若输入不是字母和换行符时,因条件c=‘A’c=‘Z’||c=‘a’c=‘z’不成立,由于未执行continue语句,故执行counter++操作;只有输入换行符时,循环结束并输出变量counter的值。程序某次执行和输出结果如下: Input a string: skjdf4623784908%%^**(%SDFsdfk Counter=18 2.4.3 goto语句和标号语句 goto语句是无条件转移语句,其一般形式为: goto 语句标号; 其中:标号语句用标识符加冒号组成,标识符由字母、数字和下划线组成,且第一个字符必须是字母或下划线。 goto语句的功能:将程序的控制流程无条件地转移到语句标号所指的标号语句处。 注意:goto语句的使用范围局限于函数内部,不允许在一个函数中使用goto语句将程序控制转移到本函数之外。 在C中,虽用goto和if语句 可构成循环,但不提倡。例如: #include stdio.h void main() { int j=1,sum=0; loop: if(j=100) sum+=j; j++; goto loop; printf(“%d\n”,sum); } 因结构化程序设计中,goto语句是一条不常用的语句。 2.4.3 goto语句和标号语句 2.4.3 goto语句和标号语句 在不影响程序的清晰性的原则下,goto语句常用来直接退出多重循环结构,从而简化程序设计。例如: for(…) for(…) for(…) { … if(disaster) goto error; … } … error: … 2.5 C语言控制结构应用举例 本章前4节较为详细地讨论了结构化程序设计的基本技术和C语言提供的三种基本程序组成结构,使用这3种基本结构可以构成许多较为复杂的程序,解决常见的程序设计问题。 本小节就程序设计中常见的求最大公约数和最小公倍数问题、穷举方法的程序实现问题和迭代方法的程序实现问题等几个程序设计中典型问题解决过程讨论程序设计的基本方法。 分析:求两个非负整数m和n(mn)的最大公倍数可用辗转相除法。算法为: 用m除以n得余数r(0≤r<n)。 若r=0则算法结束,n为最大公约数。否则执行步骤③。 m←n,n←r,转回到步骤①。 当已知两个非负整数m和n的最大公约数后,求其最小公倍数的算法可以简单描述为:两个正整数之积除以它们的最大公约数。 2.5.1 最大公约数和最小公倍数 例2-25 求两个正整数的最大公约数和最小公倍数。 输入m, n m n T F m n (r=m%n)!=0 m=n n=r 最大公约数 2.5.2 穷举思想及程序实现 例2-26 编程序找出所有的“水仙花数”。“水仙花数”是指一个3位数,其各位上数字的立方之和等于这个数本身。例如: 153=13+53+33,所以153是“水仙花数”。 分析:(用分离数据法解) 依题意可能值范围为100~999;判定方法为各位数字的立方和等于被判定数。用穷举法依次取出 [100,999]间的每个数,然后将其分解为3个数字,按条件进行判定。设数为num,则各位应表示为: 首位a=num/100 ;中间位b=num/10%10; 末位c=num%10 2.5.2 穷举思想及程序实现 实现穷举法的基本要点: 搜寻可能值的范围如何确定。 被搜寻可能值的判定方法。 对于被有哪些信誉好的足球投注网站的可能值,一般都是问题中所要查找的对象或是被查找对象应满足的条件,因而在问题中都会有清晰的描述。但对于搜寻范围,在有些问题中是比较确定的,而在另外一些问题则是不确定的。 2.5.2 穷举思想及程序实现 法二: (用组合数据法解) 若a、b和c分别表示该3位数的百、十、个位,则可以表示为: a*100+b*10+c 其中a的变化范围为[1,9],b、c的变化范围为[0,9]

文档评论(0)

czy2014 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档