|
|
1 napja | |
|---|---|---|
| .. | ||
| DeepSeekChat | 1 napja | |
| examples | 1 napja | |
| README.md | 1 napja | |
这是一个面向初学者的 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 编译器
编译并运行示例:
# 进入示例目录
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 | 文件操作、内存管理、算法、综合应用 |
#include、main 函数、printf、returnint、float、double、char、格式化输出scanf、printf、取地址符 &+、-、*、/、%、自增自减if、else if、else、比较运算符switch、case、break、defaultfor 循环结构、嵌套循环、九九乘法表while、do-while、猜数字游戏break 跳出循环、continue 跳过本次strlen、strcpy、strcat、strcmp&、解引用 *、指针交换struct、成员访问、结构体数组fopen、fprintf、fgets、fclosemalloc、free、内存管理typedef、enum、代码可读性Q:为什么我的程序运行后窗口一闪而过?
A:在 Windows 下,可以在 return 0; 前加上 getchar(); 或 system("pause"); 来暂停程序。
Q:scanf 为什么要用 &?
A:& 是取地址运算符,scanf 需要知道把输入的数据存到哪里,所以需要变量的地址。
Q:整数除法为什么结果不对? A:两个整数相除会得到整数结果(丢弃小数部分),如果需要小数结果,需要把其中一个转换为浮点数。
本项目仅供学习使用,欢迎自由使用和修改。