一文详解C语言中的switch语句和while循环
C 语言中的 switch 语句
替代多重 if..else 语句,可以使用 switch
语句。switch
语句用于选择多个代码块中的一个来执行
switch(表达式) { case x: // 代码块 break; case y: // 代码块 break; default: // 代码块
工作原理
switch
表达式只会被计算一次- 表达式的值与每个
case
的值进行比较 - 如果找到匹配,则执行相应的代码块
break
语句用于跳出switch
块并停止执行default
语句是可选的,如果找不到匹配的case
,则执行它指定的代码
下面的示例使用星期几的数字来计算星期几的名称:
int day = 4; switch (day) { case 1: printf("星期一"); break; case 2: printf("星期二"); break; case 3: printf("星期三"); break; case 4: printf("星期四"); break; case 5: printf("星期五"); break; case 6: printf("星期六"); break; case 7: printf("星期日"); break; } // 输出 "星期四" (星期 4)
break
关键字:
- 当 C 遇到
break
关键字时,它会跳出switch
块。 - 这将停止执行更多代码和块内部的
case
测试。 - 当找到匹配项并完成任务时,就该休息了。没有必要进行更多测试。
break
可以节省大量的执行时间,因为它“忽略”了switch
块中所有其他代码的执行。
default
关键字:
default
关键字用于指定在找不到case
匹配时要运行的代码:
int day = 4; switch (day) { case 6: printf("今天是星期六"); break; case 7: printf("今天是星期日"); break; default: printf("期待周末"); } // 输出 "期待周末"
C 语言中的 while 循环
循环
循环可以执行一段代码,只要满足指定的条件。循环非常方便,因为它们可以节省时间、减少错误并使代码更易于阅读。
while
循环
只要指定的条件为真,while
循环就会一直循环执行一段代码块:
语法:
while (条件) { // 要执行的代码块 }
在下面的示例中,只要一个变量 (i
) 小于 5,循环中的代码就会一遍又一遍地运行:
示例
int i = 0; while (i < 5) { printf("%d\n", i); i++; }
注意: 不要忘记增加用于条件的变量 (i++
),否则循环将永远不会结束!
do/while
循环
do/while
循环是 while
循环的一个变体。这个循环会在检查条件是否为真之前先执行一次代码块,然后只要条件为真,就会重复该循环。
语法:
do { // 要执行的代码块 } while (条件);
下面的示例使用了一个 do/while
循环。即使条件为假,循环也至少会执行一次,因为代码块是在测试条件之前执行的:
示例
int i = 0; do { printf("%d\n", i); i++; } while (i < 5);
不要忘记增加用于条件的变量,否则循环将永远不会结束!
现实生活中的例子
为了展示 while
循环的实际例子,我们可以创建一个简单的“倒计时”程序:
示例
int countdown = 3; while (countdown > 0) { printf("%d\n", countdown); countdown--; } printf("新年快乐!\n");
为了展示 while
循环结合 if else
语句的实际例子,假设我们玩一个 Yahtzee 游戏!
示例
如果骰子数字为 6,则打印“Yahtzee!”:
int dice = 1; while (dice <= 6) { if (dice < 6) { printf("没有 Yahtzee\n"); } else { printf("Yahtzee!\n"); } dice = dice + 1; }
最后
以上就是一文详解C语言中的switch语句和while循环的详细内容,更多关于C语言switch语句和while循环的资料请关注脚本之家其它相关文章!
相关文章
Ubuntu配置sublime text 3的c编译环境的具体步骤
下面小编就为大家带来一篇Ubuntu配置sublime text 3的c编译环境的具体步骤。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-03-03C++11的future和promise、parkged_task使用
这篇文章主要介绍了C++11的future和promise、parkged_task使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-04-04
最新评论