C 语言基础语法、算法与 OJ 练习题的代码仓库。全部代码按知识点分类存放在 C/ 下,共 17 个分类目录、180+ 个程序,可直接浏览或按目录检索。
代码使用
.c文件编写,建议使用支持中文文件名的 IDE(如 CLion、VS Code)打开。
C/
├── 输入输出/ printf / scanf、格式控制、字符输入
├── 基础语法/ 运算符、条件分支、循环、类型与常量、图形输出
├── 函数/ 自定义函数、库函数(math.h)使用
├── 数组/ 一维数组、二维数组(矩阵)操作
├── 指针/ 指针基础与传参
├── 字符串/ 字符串与字符处理(回文、统计、删除、大小写等)
├── 结构体/ 结构体定义、输入输出与使用
├── 动态内存/ malloc / free 动态分配
├── 递归/ 递归思想(阶乘、汉诺塔、GCD)
├── 文件/ 文件读写
├── 链表/ 链表的建立、插入、删除
├── 查找/ 顺序查找、二分查找
├── 排序/ 冒泡、奇偶、插入/选择等排序算法
├── 进制转换/ 十进制转八进制、十六进制加法
├── 数列求和/ 级数、递推与幂和
├── 数学/
│ ├── 数论/ 素数、GCD/LCM、整除、数根、大数
│ ├── 数字处理/ 数位提取、数字高位输出
│ └── 公式计算/ 几何、物理、时间、利率等公式计算
└── 竞赛/ 牛客等 OJ 练习题(模拟、构造、数论)
hello world.c·printf修饰符.c·3in1_gets.c·原样输出字符串.c·大数输入.c·打印飞机.c·画个八.c
- 运算与表达式:
两数相加.c·带符号的a+b问题.c·浮点数除法.c·求两个整数相除的商和余数.c·计算表达式的值.c·正数的和.c·自加的验证.c·逻辑运算符的短路.c - 条件分支:
条件语句.c·三数比大小.c·季节判断.c·数字学英语.c·能否整除3.c·能否整除5或3.c - 类型与常量:
明示常量.c - 循环图形输出:
刘尚贤:半高画菱形.c·刘尚贤:画n阶正方体.c
a+b函数.c·power函数实现 (for迭代).c·power函数实现 (while迭代).c·pow运用.c·math.c·阶乘 (迭代).c·重复打印字符函数.c
- 一维数组:
元素n后移.c·元素交换.c·数组对应元素的乘积.c·数组数据逆序存放(多组数据).c·数组部分逆序.c·最大值和最小值的交换.c·最大数与最小数(整体变量).c·最小元素的下标.c·最小数的下标.c·最小交换次数.c·最少的修改次数.c·有序数组的合并(单组数据).c·心之所在.c - 数组统计:
统计不及格人数.c·课程平均分.c·平均成绩于人数计算.c·计算平均成绩.c - 矩阵(二维数组):
对称的二维数组(单组数据).c·矩阵四周元素的和.c·矩阵对称判断.c·矩阵最小值.c·矩阵转置.c·矩阵转置函数.c
指针.c·swap函数实现.c·动静指针.c·指针求最大数.c·交换两个数(指针函数).c·找出最大数及其下标(指针).c·平均分和低于人数(指针+函数).c
- 回文:
回文串判断.c·回文串判断1.c·回文串判断2.c - 增删改:
字符串反转.c·字符串排序.c·字符串移动.c·字符串连接 (下标函数).c·字符串连接(指针函数).c·strcat函数实现.c·删除k后m个字符.c·删除指定字符(单组数据).c·删除重复字符(哈希表).c - 字符处理:
字符变大写.c·字符变空格.c·字符类型判断.c·小写字母替换.c·首字母大写.c·凯撒密码.c·只读取数字.c·数字字符映射.c·数字字符相加.c - 统计:
统计字符.c·统计字符个数.c·统计字符个数(指针+字符串).c·统计特定字符.c·统计指定整数的个数.c·统计元音.c - 综合:
字符串中的数字.c·最短的字符串.c·最短的字符串 (2).c
结构体.c·结构体输入输出.c·结构体问题.c·查找图书.c·复数的加减运算.c
动态内存分配求整型数组元素之和.c·计算不及格 ( 动态内存分配).c·计算平均分(指针+动态内存).c·统计不及格(指针+动态内存).c
阶乘 (递归).c·阶乘(累加递归).c·汉诺塔.c·最大公约数和最小公倍数(递归).c
文件写入.c·文本文件写入.c·统计文件文本.c·计算文件中的字符个数.c
链表建立.c·链表插入.c·链表删除.c
查找数字.c·查找数据.c·查找数组最大数字及其下标.c·查找最大值(0退出).c·二分查找.c
冒泡排序函数.c·奇偶排序.c·数据排序.c·排序与查找.c(选择/插入/冒泡/希尔/快排/堆排/归并 + 顺序/二分查找综合)
10进制转8.c·16进制加法.c
数列求和.c·数列求和1.c·数列求和2.c·数列求和3.c·等差数列求和.c·高斯数列.c·aera & cir.c·fib(迭代).c·power之和.c·累加求和.c·级数求和.c
数论(15)
素数.c·素数函数.c·素数判断.c·素数判断(函数).c·最大公约数和最小公倍数(迭代).c·最大公约数的三种进制输出.c·最小公倍数.c·完数函数.c·水仙花数.c·3n+1问题.c·数根.c·大数阶乘.c·容器取水.c·最右边的数字.c·刘尚贤:猜测年龄.c
数字处理(10)
个位数之和.c·各位数之和 (迭代).c·各位数之和 (递归).c·数字高位输出1.c·数字高位输出2.c·求最高位数字 (字符串指针).c·求最高位数字 (指针函数).c·求最高位数字 (数字计算).c·双精度整数和小数部分.c·实型数据的分解.c
公式计算(14)
三角形面积.c·计算三角形面积.c·圆和球的面积体积.c·球的表面积和体积.c·并联电阻.c·银行利率.c·秒的转换.c·时间规划.c·开学星期几.c·立方体棱长.c·计算高度.c·曼哈顿距离.c·自由落体.c·1044自由落体.c
Cantor 表.c·aabb.c·easy task.c·仙人掌.c·三角.c·纸牌.c·白兔.c·献给已逝公主的七重奏.c