一、顺序 1.1、概念: 语句自上而下顺序执行,执行完上一个语句,无条件的执行下一个语句
二、选择 2.1、概念: 根据某个条件判断是否执行指定的操作任务,C语言提供if语句实现两个分支的选择;switch语句实现多分支的选择 2.2、if语句的三种形式 2.2.1、没有else子句,if(表达式) 语句1;如:if(a > b) max = a; 2.2.2、有else子句if(表达式)
if(表达式) 语句1 else 语句22.2.3、在else部分嵌套多层的if语句
if(表达式1) 语句1 else if(表达式2) 语句2 ... else if(表达式m) 语句m else 语句m+12.3、switch语句,多分支选择结构 2.3.1、一般形式,注意switch后面括号内的表达式类型为整数类型(包括字符型)
switch(表达式) { case 常量1:语句1 case 常量2:语句2 ... case 常量n:语句n default: 语句n+1 }三、循环 3.1、while语句实现循环 3.1.1、一般形式:while(表达式) 语句 例:求1+2+3…+100;
#include <stdio.h> int main() { int i = 1; int sum = 0; while(i <= 100) { sum = sum + i; i++; } printf("%d\n",sum); } //输出为50503.2、do…while语句实现循环 3.2.1、一般形式,不同与while循环,do…while循环首先会无条件执行循环体一次
do 语句 while(表达式);例:比较下面两段程序,可以发现do,while循环的无条件执行
int i; int sum = 0; printf("please input i:"); scanf("%d",&i); while(i <= 10) { sum = sum + i; i++; } printf("%d\n",sum); /*输入11,输出0*/ int i; int sum = 0; printf("please input i:"); scanf("%d",&i); do { sum = sum + i; i++; }while(i <= 10); printf("%d\n",sum); /*输入11,输出11*/3.3、for语句实现循环 3.3.1、一般形式 for(表达式1;表达式2;表达式3) 语句 表达式1:初始条件只执行一次,可以为0个,1个或多个 表达式2:判定是否继续循环 表达式3:执行完循环体后才进行 3.3.2、执行过程 (1)先求解表达式1 (2)求解表达式2,若为真,则执行循环体,执行第(3)步 (3)求解表达式3,再转回步骤(2) (4)若表达式2为假,循环结束 例:用for循环求1+2+…+100;
#include <stdio.h> int main() { int i; int sum = 0; for(i = 0;i <= 100;i++) { sum = sum + i; } printf("%d\n",sum); } //输出为50503.4、改变循环状态break与continue break语句提前终止循环,结束循环体 continue语句结束本次循环 例:
#include <stdio.h> int main() { int i; int j; printf("please input i:"); scanf("%d",&i); for(;i < 10;i++) { continue; printf("continue情况下为:%d \n",i); } printf("please input j:"); scanf("%d",&j); for(;j < 10;j++) { printf("break情况下为:%d \n",j); break; } }运行结果为: