首页 > 其他分享 >C语言教学第四课:控制结构

C语言教学第四课:控制结构

时间:2025-02-03 20:28:47浏览次数:4  
标签:第四课 语句 int 条件 控制结构 else 循环 printf C语言

一、课程导入

学习了C语言的基础知识,包括变量、数据类型和运算符。接下来,将进入C语言的核心部分——控制结构。控制结构是程序设计中用来控制程序流程的重要工具,通过控制结构,我们可以实现条件判断、循环操作等功能,使程序能够根据不同的情况做出不同的行为。将重点学习条件语句和循环语句。

二、条件语句

(一)if语句

  1. 基本语法

    if (条件) {
        // 条件为真时执行的代码
    }
    • 如果条件为真(非零值),则执行大括号中的代码。

    • 如果条件为假(零值),则跳过大括号中的代码。

  2. 示例

    int age = 18;
    if (age >= 18) {
        printf("你已经成年了。\n");
    }

(二)if-else语句

  1. 基本语法

    if (条件) {
        // 条件为真时执行的代码
    } else {
        // 条件为假时执行的代码
    }
    • 如果条件为真,执行if部分的代码;否则,执行else部分的代码。

  2. 示例

    int age = 16;
    if (age >= 18) {
        printf("你已经成年了。\n");
    } else {
        printf("你还未成年。\n");
    }

(三)if-else if-else语句

  1. 基本语法

    if (条件1) {
        // 条件1为真时执行的代码
    } else if (条件2) {
        // 条件2为真时执行的代码
    } else {
        // 所有条件都不满足时执行的代码
    }
    • 按顺序检查每个条件,一旦某个条件为真,执行对应的代码块,然后跳过后续的条件。

  2. 示例

    int score = 85;
    if (score >= 90) {
        printf("优秀\n");
    } else if (score >= 70) {
        printf("良好\n");
    } else if (score >= 60) {
        printf("及格\n");
    } else {
        printf("不及格\n");
    }

(四)switch语句

  1. 基本语法

    switch (表达式) {
        case 常量1:
            // 表达式等于常量1时执行的代码
            break;
        case 常量2:
            // 表达式等于常量2时执行的代码
            break;
        default:
            // 所有条件都不满足时执行的代码
    }
    • 根据表达式的值选择执行对应的case分支。

    • 每个case分支后通常使用break语句防止代码“穿透”。

  2. 示例

    int day = 3;
    switch (day) {
        case 1:
            printf("星期一\n");
            break;
        case 2:
            printf("星期二\n");
            break;
        case 3:
            printf("星期三\n");
            break;
        default:
            printf("其他日期\n");
    }

三、循环语句

(一)while循环

  1. 基本语法

    while (条件) {
        // 循环体
    }
    • 在每次循环开始时检查条件,如果条件为真,则执行循环体;否则,退出循环。

  2. 示例

    int i = 1;
    while (i <= 5) {
        printf("%d\n", i);
        i++;
    }

(二)do-while循环

  1. 基本语法

    do {
        // 循环体
    } while (条件);
    • while循环类似,但do-while循环至少会执行一次循环体,然后再检查条件。

  2. 示例

    int i = 1;
    do {
        printf("%d\n", i);
        i++;
    } while (i <= 5);

(三)for循环

  1. 基本语法

    for (初始化; 条件; 更新) {
        // 循环体
    }
    • 初始化:在循环开始前执行一次。

    • 条件:每次循环开始时检查,如果为真则执行循环体。

    • 更新:每次循环结束后执行。

  2. 示例

    for (int i = 1; i <= 5; i++) {
        printf("%d\n", i);
    }

四、循环控制语句

(一)break语句

  • 用于跳出当前循环。

  • 示例:

    for (int i = 1; i <= 10; i++) {
        if (i == 5) {
            break;
        }
        printf("%d\n", i);
    }

(二)continue语句

  • 用于跳过当前循环的剩余部分,直接进入下一次循环。

  • 示例:

    for (int i = 1; i <= 10; i++) {
        if (i % 2 == 0) {
            continue;
        }
        printf("%d\n", i);
    }

五、练习

  1. 练习题

    • 编写一个程序,输入一个整数n,判断它是否为正数、负数或零。

    • 编写一个程序,输入一个整数n,计算从1到n的累加和。

    • 编写一个程序,输入一个整数n,打印从1到n的所有奇数。

  2. 参考答案

    • 判断正负数

      #include <stdio.h>
      
      int main() {
          int n;
          printf("请输入一个整数:");
          scanf("%d", &n);
      
          if (n > 0) {
              printf("正数\n");
          } else if (n < 0) {
              printf("负数\n");
          } else {
              printf("零\n");
          }
      
          return 0;
      }
    • 累加和

      #include <stdio.h>
      
      int main() {
          int n, sum = 0;
          printf("请输入一个整数:");
          scanf("%d", &n);
      
          for (int i = 1; i <= n; i++) {
              sum += i;
          }
      
          printf("从1到%d的累加和为:%d\n", n, sum);
      
          return 0;
      }
    • 打印奇数

      #include <stdio.h>
      
      int main() {
          int n;
          printf("请输入一个整数:");
          scanf("%d", &n);
      
          for (int i = 1; i <= n; i++) {
              if (i % 2 != 0) {
                  printf("%d\n", i);
              }
          }
      
          return 0;
      }

六、总结

学习了C语言中的控制结构,包括条件语句(ifif-elseif-else if-elseswitch)和循环语句(whiledo-whilefor)。通过这些控制结构,我们可以实现复杂的程序逻辑。我们还学习了循环控制语句(breakcontinue),用于控制循环的执行。

标签:第四课,语句,int,条件,控制结构,else,循环,printf,C语言
From: https://blog.csdn.net/2303_76230584/article/details/145420269

相关文章