蘭雅sRGB 0e832a1790 2分钱学C语言 DeepSeek API 自动写代码 1 dienu atpakaļ
..
DeepSeekChat 0e832a1790 2分钱学C语言 DeepSeek API 自动写代码 1 dienu atpakaļ
examples 0e832a1790 2分钱学C语言 DeepSeek API 自动写代码 1 dienu atpakaļ
README.md 0e832a1790 2分钱学C语言 DeepSeek API 自动写代码 1 dienu atpakaļ

README.md

C 语言学习项目

这是一个面向初学者的 C 语言学习项目,包含 20 个最简单的示例程序,每个示例都有详细的中文注释,帮助你循序渐进地掌握 C 语言的基础知识。

📁 项目结构

r:\zip\
├── README.md              # 项目说明文档(本文件)
└── examples\              # 示例代码目录
    ├── 01_hello_world.c       # Hello World
    ├── 02_variables.c         # 变量
    ├── 03_input_output.c      # 输入与输出
    ├── 04_arithmetic.c        # 算术运算
    ├── 05_if_else.c           # 条件判断 if-else
    ├── 06_switch.c            # switch 分支语句
    ├── 07_for_loop.c          # for 循环
    ├── 08_while_loop.c        # while 循环
    ├── 09_break_continue.c    # break 和 continue
    ├── 10_functions.c         # 函数
    ├── 11_arrays.c            # 数组
    ├── 12_strings.c           # 字符串
    ├── 13_pointers.c          # 指针
    ├── 14_structs.c           # 结构体
    ├── 15_file_io.c           # 文件读写
    ├── 16_dynamic_memory.c    # 动态内存分配
    ├── 17_typedef_enum.c      # typedef 和 enum
    ├── 18_sorting.c           # 冒泡排序
    ├── 19_recursion.c         # 递归
    └── 20_comprehensive.c     # 综合练习

🚀 如何运行

方法一:使用 GCC 编译器(推荐)

  1. 确保你的电脑已安装 GCC 编译器

    • Windows:安装 MinGW 或使用 Dev-C++
    • Linux/Mac:通常已预装,或使用 sudo apt install gcc 安装
  2. 编译并运行示例:

    # 进入示例目录
    cd examples
    
    # 编译(以第一个示例为例)
    gcc 01_hello_world.c -o hello
    
    # 运行
    ./hello        # Linux/Mac
    hello.exe      # Windows
    

方法二:使用在线编译器

如果你不想安装任何软件,可以使用在线 C 语言编译器:

只需将示例代码复制粘贴进去,点击运行即可。

📚 学习路线

建议按照以下顺序学习,每个示例都建立在前一个示例的基础上:

阶段 示例 学习内容
入门 01-04 程序结构、变量、输入输出、运算
流程控制 05-09 条件判断、循环、break/continue
进阶 10-14 函数、数组、字符串、指针、结构体
高级 15-20 文件操作、内存管理、算法、综合应用

📖 示例详解

01. Hello World(你好,世界)

  • 学习目标:了解 C 程序的基本结构
  • 关键知识点#includemain 函数、printfreturn

02. 变量(Variables)

  • 学习目标:掌握基本数据类型
  • 关键知识点intfloatdoublechar、格式化输出

03. 输入与输出(Input and Output)

  • 学习目标:学会与用户交互
  • 关键知识点scanfprintf、取地址符 &

04. 算术运算(Arithmetic Operations)

  • 学习目标:掌握基本运算符
  • 关键知识点+-*/%、自增自减

05. 条件判断 if-else

  • 学习目标:学会条件分支
  • 关键知识点ifelse ifelse、比较运算符

06. switch 分支语句

  • 学习目标:掌握多分支选择
  • 关键知识点switchcasebreakdefault

07. for 循环

  • 学习目标:掌握固定次数的循环
  • 关键知识点for 循环结构、嵌套循环、九九乘法表

08. while 循环

  • 学习目标:掌握不定次数的循环
  • 关键知识点whiledo-while、猜数字游戏

09. break 和 continue

  • 学习目标:学会控制循环流程
  • 关键知识点break 跳出循环、continue 跳过本次

10. 函数(Functions)

  • 学习目标:学会代码模块化
  • 关键知识点:函数定义、参数、返回值、递归

11. 数组(Arrays)

  • 学习目标:掌握批量数据处理
  • 关键知识点:数组声明、遍历、求最大值

12. 字符串(Strings)

  • 学习目标:掌握字符串操作
  • 关键知识点:字符数组、strlenstrcpystrcatstrcmp

13. 指针(Pointers)

  • 学习目标:理解 C 语言的核心概念
  • 关键知识点:取地址 &、解引用 *、指针交换

14. 结构体(Structures)

  • 学习目标:学会组合不同类型的数据
  • 关键知识点struct、成员访问、结构体数组

15. 文件读写(File I/O)

  • 学习目标:学会持久化存储数据
  • 关键知识点fopenfprintffgetsfclose

16. 动态内存分配(Dynamic Memory)

  • 学习目标:学会运行时分配内存
  • 关键知识点mallocfree、内存管理

17. typedef 和 enum

  • 学习目标:学会类型别名和枚举
  • 关键知识点typedefenum、代码可读性

18. 冒泡排序(Bubble Sort)

  • 学习目标:学习经典排序算法
  • 关键知识点:冒泡排序、数组操作、算法思维

19. 递归(Recursion)

  • 学习目标:理解递归思想
  • 关键知识点:递归调用、终止条件、阶乘、斐波那契数列

20. 综合练习(Comprehensive)

  • 学习目标:综合运用所学知识
  • 关键知识点:学生成绩管理系统、结构体+函数+数组

💡 学习建议

  1. 动手实践:不要只看代码,一定要自己动手敲一遍
  2. 修改代码:尝试修改示例中的数值,观察输出变化
  3. 举一反三:每个示例都尝试自己扩展新功能
  4. 多写注释:养成写注释的好习惯,帮助理解代码
  5. 循序渐进:按照学习路线逐步学习,不要跳步

🛠️ 常见问题

Q:为什么我的程序运行后窗口一闪而过? A:在 Windows 下,可以在 return 0; 前加上 getchar();system("pause"); 来暂停程序。

Q:scanf 为什么要用 & A:& 是取地址运算符,scanf 需要知道把输入的数据存到哪里,所以需要变量的地址。

Q:整数除法为什么结果不对? A:两个整数相除会得到整数结果(丢弃小数部分),如果需要小数结果,需要把其中一个转换为浮点数。

📄 许可证

本项目仅供学习使用,欢迎自由使用和修改。