经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » C 语言 » 查看文章
C 语言教程:条件和 if...else 语句
来源:cnblogs  作者:小万哥丶  时间:2023/12/26 9:50:22  对本文有异议

C 语言中的条件和 if...else 语句

您已经学习过 C 语言支持数学中的常见逻辑条件:

  • 小于:a < b
  • 小于或等于:a <= b
  • 大于:a > b
  • 大于或等于:a >= b
  • 等于:a == b
  • 不等于:a != b

您可以使用这些条件来根据不同的决策执行不同的操作。

C 语言具有以下条件语句:

  • 使用 if 来指定要执行的代码块,如果指定的条件为真
  • 使用 else 来指定要执行的代码块,如果相同的条件为假
  • 使用 else if 来指定要测试的新条件,如果第一个条件为假
  • 使用 switch 来指定要执行的许多备选代码块

if 语句

使用 if 语句指定要执行的代码块,如果条件为真。

语法

  1. if (condition) {
  2. // 要在条件为真时执行的代码块
  3. }

请注意,if 是小写字母。大写字母(If 或 IF)会生成错误。

在下面的示例中,我们测试两个值以找出 20 是否大于 18。如果条件为真,则打印一些文本:

  1. if (20 > 18) {
  2. printf("20 is greater than 18");
  3. }

我们也可以测试变量:

  1. int x = 20;
  2. int y = 18;
  3. if (x > y) {
  4. printf("x is greater than y");
  5. }

例子解释

在上面的示例中,我们使用两个变量 xy 来测试 x 是否大于 y(使用 > 运算符)。由于 x 为 20,y 为 18,并且我们知道 20 大于 18,因此我们在屏幕上打印“x is greater than y”。

else 语句

使用 else 语句指定要执行的代码块,如果条件为假。

语法

  1. if (condition) {
  2. // 如果条件为真,则执行的代码块
  3. } else {
  4. // 如果条件为假,则执行的代码块
  5. }
  1. int time = 20;
  2. if (time < 18) {
  3. printf("Good day.");
  4. } else {
  5. printf("Good evening.");
  6. }
  7. // 输出 "Good evening."

例子解释

在上面的示例中,时间 (20) 大于 18,因此条件为假。因此,我们移动到 else 条件并打印到屏幕“Good evening”。如果时间小于 18,则程序将打印“Good day”。

else if 语句

使用 else if 语句指定新的条件,如果第一个条件为假。

语法

  1. if (condition1) {
  2. // 如果条件1为真,则执行的代码块
  3. } else if (condition2) {
  4. // 如果条件1为假且条件2为真,则执行的代码块
  5. } else {
  6. // 如果条件1为假且条件2为假,则执行的代码块
  7. }
  1. int time = 22;
  2. if (time < 10) {
  3. printf("Good morning.");
  4. } else if (time < 20) {
  5. printf("Good day.");
  6. } else {
  7. printf("Good evening.");
  8. }
  9. // 输出 "Good evening."

例子解释

在上面的示例中,时间 (22) 大于 10,因此第一个条件为假。下一个条件,在 else if 语句中,也是假的,因此我们移动到 else 条件,因为 condition1condition2 都是假的 - 并打印到屏幕“Good evening”。

但是,如果时间是 14,我们的程序会打印“Good day”。

另一个例子

此示例展示了如何使用 if..else 找出数字是正数还是负数:

  1. int myNum = 10; // 这是一个正数还是负数?
  2. if (myNum > 0) {
  3. printf("The value is a positive number.");
  4. } else if (myNum < 0) {
  5. printf("The value is a negative number.");
  6. } else {
  7. printf("The value is 0.");
  8. }

C 语言中的简洁 if...else 语句(三元运算符)

除了标准的 if...else 语句之外,C 语言还提供了一种简写形式,称为三元运算符,因为它由三个操作数组成。它可以将多行代码替换为一行,通常用于替换简单的 if...else 语句。

语法

  1. variable = (condition) ? expressionTrue : expressionFalse;

示例

以下代码用标准的 if...else 语句判断时间是否晚于 18 点:

  1. int time = 20;
  2. if (time < 18) {
  3. printf("Good day.");
  4. } else {
  5. printf("Good evening.");
  6. }

使用三元运算符可以简写为:

  1. int time = 20;
  2. (time < 18) ? printf("Good day.") : printf("Good evening.");

两种方式都将输出 "Good evening."。

优点

三元运算符的优点在于简洁,可以将多行代码替换为一行,使代码更易读。

缺点

三元运算符的缺点在于可读性下降,尤其是嵌套使用时,可能会使代码难以理解。

使用建议

建议在简单的 if...else 语句中使用三元运算符,以简化代码。在复杂的情况下,建议使用标准的 if...else 语句,以保持代码的可读性。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

原文链接:https://www.cnblogs.com/xiaowange/p/17926791.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号