switch
while
switch 语句和 while 循环是 C 语言中常用的控制结构,用于根据不同的条件执行不同的代码块,以及重复执行一段代码。下面将详细解析它们的用法和功能。
switch 语句用于基于变量的值选择要执行的代码块。它是多分支选择语句的实现方式之一。
switch (expression) { case constant1: // 当 expression 的值等于 constant1 时执行的代码 break; case constant2: // 当 expression 的值等于 constant2 时执行的代码 break; // 你可以添加任意多个 case 分支 default: // 当 expression 不等于任何一个已定义的常量时执行的代码 }
expression
case
break
default
#include <stdio.h> int main() { int day = 3; switch (day) { case 1: printf("Monday\n"); break; case 2: printf("Tuesday\n"); break; case 3: printf("Wednesday\n"); break; case 4: printf("Thursday\n"); break; case 5: printf("Friday\n"); break; case 6: printf("Saturday\n"); break; case 7: printf("Sunday\n"); break; default: printf("Invalid day\n"); } return 0; }
输出:
Wednesday
while 循环用于重复执行一段代码,只要指定的条件为真(非零)。
while (condition) { // 循环体 }
condition
#include <stdio.h> int main() { int count = 0; while (count < 5) { printf("Count: %d\n", count); count++; } return 0; }
Count: 0 Count: 1 Count: 2 Count: 3 Count: 4
do-while
do-while 循环类似于 while 循环,但 do-while 循环至少执行一次,因为条件是在循环体之后检查的。
do { // 循环体 } while (condition);
#include <stdio.h> int main() { int count = 0; do { printf("Count: %d\n", count); count++; } while (count < 5); return 0; }
有时你可能需要在循环内使用 switch 语句。下面是一个结合使用的示例。
#include <stdio.h> int main() { int count = 0; char option; while (count < 3) { printf("Enter option (a/b/c): "); scanf(" %c", &option); switch (option) { case 'a': printf("Option A selected\n"); break; case 'b': printf("Option B selected\n"); break; case 'c': printf("Option C selected\n"); break; default: printf("Invalid option\n"); } count++; } return 0; }
Enter option (a/b/c): a Option A selected Enter option (a/b/c): b Option B selected Enter option (a/b/c): x Invalid option
在这个示例中,程序会提示用户输入一个选项,使用 switch 语句根据输入执行相应的代码,然后继续循环直到输入三次为止。
通过合理使用这些控制结构,可以编写出功能丰富且灵活的 C 程序。
原文链接:codingdict.net