顺序结构
顺序结构是程序中最基本的控制结构,它指的是程序中的语句按从上到下的顺序依次执行。顺序结构不涉及任何条件判断或循环控制,程序的执行流程简单明了。
示例
下面是一个简单的顺序结构示例程序,它演示了如何按照顺序输出三条消息:
#include <stdio.h>
int main() {
// 顺序执行的语句
printf("这是第一条消息。\n");
printf("这是第二条消息。\n");
printf("这是第三条消息。\n");
return 0;
}
在这个示例中,printf
函数的调用按照代码中的顺序依次执行,程序的输出将会按照指定的顺序显示三条消息。
选择结构
选择结构允许程序在不同条件下执行不同的代码段,这使得程序可以根据不同的输入或状态做出决策。C 语言中的选择结构主要通过 if
语句和 switch
语句来实现。
if
语句
if
语句用于根据条件执行特定的代码块。其基本语法如下:
if (条件) {
// 如果条件为真,执行这部分代码
}
示例
下面的示例展示了一个简单的 if
语句的使用,该语句检查一个数字是否大于零:
#include <stdio.h>
int main() {
int number;
printf("请输入一个整数:");
scanf("%d", &number);
if (number > 0) {
printf("输入的数字是正数。\n");
}
return 0;
}
如果用户输入的数字大于零,程序将输出“输入的数字是正数”。
if-else
语句
if-else
语句提供了在条件不成立时执行另一段代码的能力。其基本语法如下:
if (条件) {
// 如果条件为真,执行这部分代码
} else {
// 如果条件为假,执行这部分代码
}
示例
下面的示例展示了一个 if-else
语句的使用,它检查一个数字是正数还是负数:
#include <stdio.h>
int main() {
int number;
printf("请输入一个整数:");
scanf("%d", &number);
if (number > 0) {
printf("输入的数字是正数。\n");
} else {
printf("输入的数字是负数或零。\n");
}
return 0;
}
if-else if-else
语句
if-else if-else
语句允许我们处理多个条件,每个条件都有不同的代码块。其基本语法如下:
if (条件1) {
// 条件1为真,执行这部分代码
} else if (条件2) {
// 条件2为真,执行这部分代码
} else {
// 所有条件均为假,执行这部分代码
}
示例
下面的示例展示了如何使用 if-else if-else
语句来检查一个数字的符号:
#include <stdio.h>
int main() {
int number;
printf("请输入一个整数:");
scanf("%d", &number);
if (number > 0) {
printf("输入的数字是正数。\n");
} else if (number < 0) {
printf("输入的数字是负数。\n");
} else {
printf("输入的数字是零。\n");
}
return 0;
}
switch
语句
switch
语句用于在多个可能的值之间进行选择,它是一种较为简洁的选择结构。其基本语法如下:
switch (表达式) {
case 常量1:
// 当表达式的值等于常量1时,执行这部分代码
break;
case 常量2:
// 当表达式的值等于常量2时,执行这部分代码
break;
// 可以有多个 case 分支
default:
// 如果没有任何 case 匹配,执行这部分代码
}
示例
下面的示例展示了如何使用 switch
语句根据输入的星期几来输出对应的工作日:
#include <stdio.h>
int main() {
int day;
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");
break;
}
return 0;
}