ToB企服应用市场:ToB评测及商务社交产业平台

标题: C 语言中的 switch 语句和 while 循环详解 [打印本页]

作者: 缠丝猫    时间: 2024-3-5 04:35
标题: C 语言中的 switch 语句和 while 循环详解
C 语言中的 switch 语句

替代多重 if..else 语句,可以使用 switch 语句。switch 语句用于选择多个代码块中的一个来执行
  1. switch(表达式) {
  2.   case x:
  3.     // 代码块
  4.     break;
  5.   case y:
  6.     // 代码块
  7.     break;
  8.   default:
  9.     // 代码块
复制代码
工作原理

下面的示例使用星期几的数字来计算星期几的名称:
  1. int day = 4;
  2. switch (day) {
  3.   case 1:
  4.     printf("星期一");
  5.     break;
  6.   case 2:
  7.     printf("星期二");
  8.     break;
  9.   case 3:
  10.     printf("星期三");
  11.     break;
  12.   case 4:
  13.     printf("星期四");
  14.     break;
  15.   case 5:
  16.     printf("星期五");
  17.     break;
  18.   case 6:
  19.     printf("星期六");
  20.     break;
  21.   case 7:
  22.     printf("星期日");
  23.     break;
  24. }
  25. // 输出 "星期四" (星期 4)
复制代码
break 关键字:
default 关键字:
  1. int day = 4;
  2. switch (day) {
  3.   case 6:
  4.    printf("今天是星期六");
  5.     break;
  6.   case 7:
  7.    printf("今天是星期日");
  8.     break;
  9.   default:
  10.    printf("期待周末");
  11. }
  12. // 输出 "期待周末"
复制代码
C 语言中的 while 循环

循环
循环可以执行一段代码,只要满足指定的条件。循环非常方便,因为它们可以节省时间、减少错误并使代码更易于阅读。
while 循环
只要指定的条件为真,while 循环就会一直循环执行一段代码块:
语法:
  1. while (条件) {
  2.   // 要执行的代码块
  3. }
复制代码
在下面的示例中,只要一个变量 (i) 小于 5,循环中的代码就会一遍又一遍地运行:
示例
  1. int i = 0;
  2. while (i < 5) {
  3.   printf("%d\n", i);
  4.   i++;
  5. }
复制代码
注意: 不要忘记增加用于条件的变量 (i++),否则循环将永远不会结束!
do/while 循环
do/while 循环是 while 循环的一个变体。这个循环会在检查条件是否为真之前先执行一次代码块,然后只要条件为真,就会重复该循环。
语法:
  1. do {
  2.   // 要执行的代码块
  3. }
  4. while (条件);
复制代码
下面的示例使用了一个 do/while 循环。即使条件为假,循环也至少会执行一次,因为代码块是在测试条件之前执行的:
示例
  1. int i = 0;
  2. do {
  3.   printf("%d\n", i);
  4.   i++;
  5. }
  6. while (i < 5);
复制代码
不要忘记增加用于条件的变量,否则循环将永远不会结束!
现实生活中的例子
为了展示 while 循环的实际例子,我们可以创建一个简单的“倒计时”程序:
示例
  1. int countdown = 3;
  2. while (countdown > 0) {
  3.   printf("%d\n", countdown);
  4.   countdown--;
  5. }
  6. printf("新年快乐!\n");
复制代码
为了展示 while 循环结合 if else 语句的实际例子,假设我们玩一个 Yahtzee 游戏!
示例
如果骰子数字为 6,则打印“Yahtzee!”:
[code]int dice = 1;while (dice




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4