当前位置: 首页 > news >正文

第三天:C语言控制结构

目录

1. 条件语句

2. 循环语句

3. 实例:计算阶乘


        在前两天的学习中,您已经掌握了C语言的基本知识。今天,我们将学习C语言的控制结构,包括条件语句和循环语句。通过控制结构,您可以实现程序的分支和循环,从而编写出更为复杂的程序。

1. 条件语句

        条件语句是根据条件表达式的值来决定程序执行的路径。C语言中常用的条件语句有if语句和switch语句。

  • if语句:根据条件表达式的值为真(非零)或假(零)来执行不同的代码块。例如:

  • int age = 18;
    if (age >= 18) {printf("You are an adult.\n");
    } else {printf("You are not an adult.\n");
    }

    switch语句:根据条件表达式的值来匹配相应的case标签,并执行其后的语句。例如:

  • int choice = 2;
    switch (choice) {case 1:printf("Option 1\n");break;case 2:printf("Option 2\n");break;case 3:printf("Option 3\n");break;default:printf("Invalid option\n");
    }

2. 循环语句

        循环语句用于重复执行一段代码,直到满足指定的条件。C语言中常用的循环语句有while循环、do-while循环和for循环。

  • while循环:在条件表达式为真(非零)时,反复执行循环体。例如:

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

    do-while循环:先执行一次循环体,然后在条件表达式为真(非零)时,继续反复执行循环体。例如:

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

    for循环:通过一个循环控制变量来控制循环的次数。例如:

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

        现在,您已经学会了C语言的控制结构,包括条件语句和循环语句。接下来,我们将通过一个简单的实例来巩固今天的学习内容。

3. 实例:计算阶乘

目标:编写一个C程序,输入一个非负整数n,计算并输出n的阶乘(n乘,即n!)。

  • 使用文本编辑器创建一个新的文件,将其命名为factorial.c
  • factorial.c文件中输入以下代码:
  • #include <stdio.h>int main() {int n;unsigned long long factorial = 1;// 输入一个非负整数printf("Enter a non-negative integer: ");scanf("%d", &n);// 计算阶乘for (int i = 1; i <= n; i++) {factorial *= i;}// 输出结果printf("%d! = %llu\n", n, factorial);return 0;
    }
  • 保存文件,然后关闭文本编辑器。
  • 根据前面学习的命令行编译和运行方法,编译并运行factorial.c程序。
  • gcc factorial.c -o factorial
  • 运行程序并输入一个非负整数,查看计算结果。
  • ./factorial

        通过这个实例,您已经学会了如何在C语言中使用循环语句进行计算。在接下来的第四天,我们将学习C语言的数组和字符串。请继续关注我们的7天C语言零基础入门课程,共同成长!

http://www.lryc.cn/news/60418.html

相关文章:

  • 访问若依vue版后端api接口
  • 另一种迁移xxl-job任务的方法,适合不满足数据迁移条件
  • Redis缓存穿透、击穿、雪崩面试题详解
  • 【网络安全】本地提权漏洞分析
  • 电脑端(PC)按键精灵——3.其他命令
  • Hudi集成Flink-写入方式
  • 深度探索list
  • QQuick-自绘
  • 【算法】【算法杂谈】已知[1,m]的等概率函数,求[1,n]的等概率函数
  • 【Python】Python中的列表,元组,字典
  • 分布式系统概念和设计-分布式对象和远程调用
  • 11-FastDFS
  • Word这样用,提高效率不加班
  • 【Linux】调试器---gdb的使用
  • MySQL数据库之表的增删改查(进阶)
  • Nginx从开始到结束,简单到小白都能懂哦
  • Qt——Qt控件之按钮-QDialogButtonBox对话框按钮盒子控件的使用总结(例程:自定义按钮)
  • 数据库学习-常用的SQL语句
  • 5种获取JavaScript时间戳函数的方法
  • 图的宽度优先遍历
  • 企业AD域(域控服务器)的安装和配置详细教程
  • 面试官:一千万的数据,你是怎么查询的?
  • IntelliJ 上 Azure Event Hubs 全新支持来了!
  • 性能测试,监控磁盘读写iostat
  • steam游戏搬砖项目怎么做?月入过万的steam搬砖项目教程拆解
  • 协同运力、算力、存力,加速迈向智能世界
  • 被裁员了,要求公司足额补缴全部公积金,一次补了二十多万!网友兴奋了,该怎么操作?...
  • 家庭智能插座一Homekit智能
  • 什么是雪花算法?啥原理?
  • 【华为OD机试真题】 统计差异值大于相似值二元组个数(javapython)