一、选择语句
- if
- switch
if选择语句有以下表示形式:
1、如果条件为真,则执行语句块内容。
if(表达式){
语句块
}
2、如果条件为真,则执行语句块1内容;如果条件为假,则执行语句块2的内容。
if(表达式){
语句块1
}else{
语句块2
}
3、如果表达式1为真,则执行语句块1内容;否则如果表达式2为真,则执行语句块2,否则执行语句块3(这种情况可以视为if 的多分支语句)。
if(表达式1){
语句块1
}else if(表达式2){
语句块2
}else {
语句块3
}
例子如下:
#include <stdio.h>
int main() {
// 比较a,b两数的大小
// 1,定义a,b的值以及最大值变量
int a = 10, b = 15, max;
// 假设a的值为两数中的最大值
max = a;
// 如果a小于b则最大值为b
if (a < b) {
max = b;
}
// 输出两数中的最大值
printf("%d与%d中最大的数为%d", a, b, max);
return 0;
}
结果显示:
#include <stdio.h>
int main() {
// 比较a,b两数的大小
// 1,定义a,b的值以及最大值变量
int a = 20, b = 15, max;
if (a <= b) {
// 如果a小于等于b,则最大值为b
max = b;
}
else {
// 如果a不小于等于b,即a大于b,则最大值为a
max = a;
}
printf("%d与%d中最大的数为%d", a, b, max);
return 0;
}
结果显示:
注:else{ }只与离其最近的 if (){ }进行匹配
switch语句表示形式:
switch(表达式){
case 常量表达式1:语句1;
case 常量表达式2:语句2;
…
case 常量表达式n:语句n;
default:语句n+1;
}
switch语句也是一种分支结构,常常用于多分支的情况。
例如:输入1~7之间任意一个整数,输出对应的星期数。
#include <stdio.h>
int main() {
int day = 0;
printf("请输入数字(1~7)");
scanf("%d", &day);
switch (day) {
case 1:
printf("今天是星期一!\n");
break;
case 2:
printf("今天是星期二!\n");
break;
case 3:
printf("今天是星期三!\n");
break;
case 4:
printf("今天是星期四!\n");
break;
case 5:
printf("今天是星期五!\n");
break;
case 6:
printf("今天是星期六!\n");
break;
case 7:
printf("今天是星期日!\n");
break;
default:
printf("输入的数字不满足要求!\n");
}
return 0;
}
或者可以用if的多分支情况:
#include <stdio.h>
int main() {
int day = 0;
printf("请输入数字(1~7)");
scanf("%d", &day);
if (1 == day) {
printf("今天是星期一!");
}
else if (2 == day) {
printf("今天是星期二!");
}
else if (3 == day) {
printf("今天是星期三!");
}
else if (4 == day) {
printf("今天是星期四!");
}
else if (5 == day) {
printf("今天是星期五!");
}
else if (6 == day) {
printf("今天是星期六!");
}
else if (7 == day) {
printf("今天是星期日!");
}
else {
printf("输入的数字不满足要求!");
}
return 0;
}
结果显示:
注:
1、switch语句中应该在每个选项的最后都添加 break ,目的就是为了跳出循环,然后就可以将语句列表划分为不同的部分。
2、default子句就是在任何条件都不满足的情况下才执行的语句。
3、if语句特别冗长的情况下可以用switch语句进行简化。
二、循环语句
- while语句
- for语句
- do-while语句
while语句的语法结构表示形式:
while(条件){
循环语句块
}
例如:在控制台打印1~15
#include <stdio.h>
int main() {
// 定义循环变量
int i = 1;
while (i <= 15) {
printf("%5d", i);
// 更新循环变量
i = i + 1;
}
return 0;
}
结果显示:
注:continue用在循环中是用来结束本次循环,后面的循环还会继续执行。
(for语句和do-while语句将会在下一篇文章中及进行说明)