- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
例 5.4 用 for 循环语句编程,将输入的多个正数 累加,当输入的数据为负数时,则程序结束。 分析:多个正数的和用变量 sum 存放,初始值 sum = 0 。每次 输入的数据存入 x ,如果 x = 0 则 sum += x ,否则终止。 程序: void main() {long sum = 0; int x ; for ( ;; ) { scanf(″%d″ , x) ; if (x = 0) sum += x ; else break; } printf(″sum = ld″ , sum) ; } 上一页 下一页 5.4.2 continue 语句 一般形式: continue ; 该语句被称为继续语句。在循环结构中执行 continue 语句 , 使本次循环提前结束,即跳过循环体 中 continrue 语句下面的尚未执行的循环体语句,但 不结束整个循环,继续进行下一次循环的条件判别, 条件为真,继续进行执行循环语句。 上一页 下一页 例 5.5 显示输入的字符,如果按的是 Esc 键,则退出循环; 如果按的是 Enter 键,则不做任何处理,继续输入下一个 字符。 #include ″conio.h″ 说明: void main() getch() 和 putch() 的作用与 {char ch ; getchar() 和 putchar() 相似,但也 for ( ;; ) 有不同之处。 {ch = getch(); (1)getch() 不显示键盘输入的字 if (ch == 27) break; 符。 if (ch == 13) (2)getchar() 输入字符时,要按 continue; Enter 键,计算机才会响应。而 putch(ch); 用 getch() 时,输入字符不需要回 } 车。 getch(); } 上一页 下一页 5.5 循环的嵌套 循环体语句可以是任何形式的语句,简单语 句、空语句、复合语句、流程控制语句都可作为 循环体语句。 当循环体语句又是一条循环语句,或作为循 环体的复合语句中又包含循环语句时称为循环的 嵌套。嵌套可以是两层或多层。 While 、 do-while 、 for 三种循环都可以互相嵌套。 上一页 下一页 例 5.6 输出 n × n 个字符“ * ”。 分析: (1) n 行“ * ”的输出,可用下列循环控制。 for (i = 1 ; i = n ; i ++ ) (2) 每行 n 个“ * ”的输出,可用下列循环语句实现; for (j = 1 ; j = n ; j ++ ) putchar(′*′); putchar(′ \ n′) ; 所以输出 n × n 行 “ * ”可用双重循环语句实现如下: for (i = 1 ; i = n ; i ++ ) { for (j = 1 ; j = n ; j ++ ) putchar(′*′); putchar(′ \ n′); } 上一页 下一页 5.6 复合结构程序举例 例 5.9 找出 3 ~ 1 000 中的全部素数。 分析: (1) 素数是除 1 和它本身之外不能被任何一个整数所整除的自 然数。如 2 , 3 , 5 , 7 是素数; 1 , 4 , 6 , 8 , 10 不是素数。 (2) 判断某数 i 是否为素数的一个简单办法是用 2,3,4 ,…, i - 1 这些数据逐个去除 i ,只要被其中的一个数整除了,则 i 就不 是素数。数学上已证明,对于自然数 i 只需用 2,3,4 ,…, i 1/2 测试。 (3) 外层循环控制。 for (i = 3 ; i = 1000 ; i ++ ) (4) 用 j = 2 , … , i 1/2 测试 i 。 上一页 下一页 程序: #include 〈 math.h 〉 void main() { unsigned int i , j , count , flag ; count = 0; for(i=3;i=1000;i++) { flag=0; for(j = 2 ; j = sqrt(i) ; j ++ ) { if(i % j == 0) { flag = 1 ; break ; } } if (flag == 0) { printf(″M , ″ , i ); count ++; if (count % 8 == 0) printf(″ \ n″); } } } 上一页 下一页 例 5.11 电文加密问题。已知电文加密规律为:将 字母变成其后面的第 4 个字母,其他字符保持不 变。例如, a→e,A→E,W→A 。编写一个程序,
原创力文档


文档评论(0)