文章目录
- 选择分支结构
- if选择结构
- if...else...选择结构
- if...else if...else 嵌套选择结构
- switch多分支结构
- 循环结构
- for 循环
- while 循环
- do … while 循环
- 跳转语句
选择分支结构
if选择结构
基本格式:if(表达式1)语句1;
功能:如果表达式1为真,就执行下面的语句1;如果表达式为假,就不执行后面的语句
if…else…选择结构
基本格式:if(表达式1)语句1; else语句2;
功能:如果表达式1为真,就执行if后面的语句1;如果表达式1为假,就执行else 后面的语句2
if…else if…else 嵌套选择结构
基本格式:if(表达式1)语句1; else if(表达式2) 语句2; else 语句3;
- 例:从键盘输入一个学员的成绩:0-100,整数。
- 分数90-100:优秀;分数80-89:良好;分数60-79:合格;分数0-59:不合格
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{//从键盘输入一个学员的成绩:0~100,整数。//分数90~100:优秀;分数80~89:良好;分数60~79:合格;分数0~59:不合格int grade;printf("请输入成绩:");scanf("%d", &grade);if (90 <= grade && grade <= 100)printf("成绩优秀\n");else if (80 <= grade && grade < 90)printf("成绩良好\n");else if (60 <= grade && grade < 80)printf("成绩合格\n");else printf("成绩不合格\n");
}
- 运行结果
switch多分支结构
基本格式:switch(判断条件) //判断条件(表达式)需要是整型或字符型{case 常量1: 语句1; break; //常量1:只能是常量或者表达式,必须是整型或者字符型case 常量2: 语句2; break; 、、breadk;直接结束所在的这个switch结构……case 常量 n: 语句n; break;default: 语句n+1; }执行流程:判断条件的值与哪个case后的常量相等就执行对应case后的语句;若与所有值都不相等,则执行default
- 例1:使有break的情况
- 例2:没有使用break
- 例3:从键盘输入一个学员的成绩:0-100,整数。
- 分数90-100:优秀;分数80-89:良好;分数60-79:合格;分数0-59:不合格
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{int grade;printf("请输入成绩:");scanf("%d", &grade);switch (grade / 10){case 10:case 9: printf("成绩优秀\n"); break;case 8: printf("成绩良好\n"); break;case 7:case 6: printf("成绩合格\n"); break;case 5:case 4:case 3:case 2:case 1:case 0: printf("成绩不及格\n"); break;}return 0;
}
运行结果
循环结构
for 循环
基本格式 :for(表达式1;表达式2;表达式3){循环体 ;}表达式的含义:表达式1:初始化语句,只有开始循环时才执行一次;表达式2:循环继续的条件;表达式3:循环条件的改变;注意:表达式之间的分隔符;不能少。
- 例:打印九九乘法表
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{int i, j;for (i = 1; i <= 9; i++){for (j = 1; j <= i; j++){printf("%dx%d=%d\t", j, i, i*j);}printf("\n");}return 0;
}
运行结果
while 循环
基本格式 :
while (判断表达式)
{ 循环体 ;
}循环执行流程:判断表达式的值,若为真则执行循环体,否则结束循环。
do … while 循环
基本格式 :
do
{ 循环体 ;
} while (表达式) ;循环的执行流程:先执行一次循环体,然后再判断表达式的值;表达式的值为真则继续执行循环体,否则结束循环。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{int a = 5;do{printf("%d\n", a);} while (a--);return 0;//1、a--表达式值是5 a=4//2、a--表达式值是4 a=3//3、a--表达式值是3 a=2//4、a--表达式值是2 a=1//5、a--表达式值是1 a=0//6、a--表达式值是0 a=-1
}
跳转语句
-
break语句:跳出所在循环,接着执行循环体下面的语句
-
continue语句:提前结束本次循环,接着执行下一次循环
-
goto跳转:少用,避免滥用