收藏 分销(赏)

流程控制.doc

上传人:胜**** 文档编号:1688161 上传时间:2024-05-07 格式:DOC 页数:7 大小:98.50KB 下载积分:10 金币
下载 相关 举报
流程控制.doc_第1页
第1页 / 共7页
流程控制.doc_第2页
第2页 / 共7页


点击查看更多>>
资源描述
这节讲解分支和循环大家注意了,这是重点:分支就是说选择执行某些语句,而循环就是不停地工作,直到完成这次任务。注意语法规则,这是最后一节了。本章算是结束了,后续我会发出本章总结和大量练习题。 分支语句 1.if 语句 if 语句允许程序通过测试表达式的值从两种选项中选择一种。If语句的最简单格式如下: 用法①:if(表达式)语句     描述:如果表达式为“真”,则执行语句;否则执行if后面的语句。     例子:                if(a>1)                   b=10; 用法②:if(表达式)                     语句1                 else                     语句2    描述:如果表达式的结果为“真”,则执行语句1;否则执行语句2。 例子:if (a>1)                    b=10;                   else                    b=100;               用法③:if(表达式1)     语句1                  else  if(表达式2)     语句2                   else  if(表达式3)     语句3                                。                                 。                                。                                。                 else  if(表达式m)     语句m                 else   语句n      描述:如果表达式1的结果为“真”,则执行语句1,退出if语句;否则去判断表达式2,                  如果表达式2的结果为“真”,则执行语句2,退出if语句;否则去判断表达式3,                  如果表达式3的结果为“真”,则执行语句3,退出if语句;否则去判断表达式3后面的表达式,                     。。。。。。。                 如果表达式m的结果为“真”,则执行语句m,退出if语句;                 否则去执行语句n。 例子:if (a>1)   b=10;                   else  if(a>2)                                b=20;                    else  if(a>3)                                b=30;                   else  if(a>4)                                b=40;                   else                                  b=100;                 if语句的嵌套      if语句的嵌套是指if语句中又包含了一个或多个if语句 main() { float score; 读取你的分数: scanf("score=%lf",&score); if(score<=100&&score>=0) else if(score>=90&&score<=100) printf("A"); else if(score>=80&&score<=89) printf("B"); else if(score>=70&&score<=79) printf("C"); else if(score>=60&&score<=69) printf("D"); else printf("E"); } 2. switch语句 switch语句可以产生具有多个分支的控制流程。它的格式是: switch (控制表达式) { case 常量表达式: 语句列表 case 常量表达式: 语句列表 ... default: 语句列表 } 例如以下程序根据传入的参数1~7分别打印Monday~Sunday: switch语句 如果传入的参数是2,则从case 2分支开始执行,先是打印相应的信息,然后遇到break语句,它的作用是跳出整个switch语句块。C语言规定各case分支的常量表达式必须互不相同,如果控制表达式不等于任何一个常量表达式,则从default分支开始执行,通常把default分支写在最后,但不是必须的。使用switch语句要注意几点: 1. case后面跟表达式的必须是常量表达式,这个值和全局变量的初始值一样必须在编译时计算出来。 2. 浮点型不适合做精确比较,所以C语言规定case后面跟的必须是整型常量表达式。 3. 进入case后如果没有遇到break语句就会一直往下执行,后面其它case或default分支的语句也会被执行到,直到遇到break,或者执行到整个switch语句块的末尾。通常每个case后面都要加上break语句,但有时会故意不加break来利用这个特性,例如:  缺break的switch语句 switch语句不是必不可缺的,显然可以用一组if ... else if ... else if ... else ...代替,但是一方面用switch语句会使代码更清晰,另一方面,有时候编译器会对switch语句进行整体优化,使它比等价的if/else语句所生成的指令效率更高。 循环语句 1. while语句 while循环和for循环类似,其格式为: while (条件语句) { 语句1 ; 语句2 ; .... 语句n ; } 执行while时,先测试“条件语句”,如果条件成立,则执行语句1到语句n,直至条件不成立时调处循环。 int i=0 ; while (i<10) { i++ ; printf("i的值%d\n”,i); } 2.do…while do ... while 循环语句的格式为: do { 语句1 ; 语句2 ; .... 语句n ; } while (条件语句) ; do ...while 语句的功能是首先执行语句1到语句n,然后进行条件测试,如果条件成立,则继续执行语句1到语句n,否这跳出循环。如: int test=0; do { test++; } while(test<10); 这种控制并不是很常用,但有时却非常重要,使用时注意结尾处while语句后的分号。 3.for 循环 for语句的格式为: for (初始化语句; 条件语句; 控制语句) { 语句1 ; 语句2 ; .... 语句n ; } for 语句的执行顺序是:首先执行“初始化语句”;然后测试“条件语句”;若条件成立,则执行语句1到语句n;然后执行“控制”语句;接着再测试条件语句是否成立,如果成立则重复执行以上过程,直至条件不成立时才结束for循环。如: for(i=0;i<10;i++). printf(“%d”,i); 你可以在for循环的头部说明你的变量,而且最后一个表达式可以省略,不过要确定在语句中对变量的值有所改变,如: for(int i=0;i<=10;) i+=i; for循环中,“初始化语句”、“条件语句”和“控制语句”都可以省略,但是其间的分号不能省略。例如: int i =0 ; for (; ; ;) { if i>10 break ; i = i +1 ; } for循环中省略“条件语句”时,在for语句{}中必须包换转句语句控制程序在某个条件满足时跳出for循环,否则将形成死循环 4.break和continue语句 continue语句也会终止当前循环,和break语句不同的是,continue语句终止当前循环后又回到循环体的开头准备执行下一次循环。对于while循环和do/while循环,执行continue语句之后测试条件语句,如果值为真则继续执行下一次循环; while (条件语句) { 语句1 ; } int i=0; while(i<10){ i++; if(i==5) continue; } printf("%d\n",i); 对于for循环,执行continue语句之后首先计算控制语句,然后测试条件语句,如果值为真则继续执行下一次循环。 for (初始化语句; 条件语句; 控制语句) int i=0; for(i=0;i<10;i++){ if(i==5) continue; } Au:[PYG]whypro QQ:420094850
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服