题目源自某高校C++的OJ
将做过的C++ OJ题目整理合并了一下,总共有一百多道题目,手动合并自然是不可能的
这个时候我们就可以使用shell
脚本来取代这种机械化的重复劳动了,由于写成博客需要使用Markdown文档,我们就结合md文档的语法来编写这个merge.sh
脚本吧
vim merge.sh
脚本内容:
#!/usr/bin/env bash
ls *.cpp |
while read file_name;
do
echo "### ${file_name%.*}:" >> all.md
echo '```cpp' >> all.md
cat "$file_name" >> all.md
echo "" >> all.md
echo '```' >> all.md
echo "" >> all.md
done
最后赋予执行权限:
chmod +x merge.sh
./merge.sh
大功告成啦
A. 身体评估(类与对象)
B. 最胖的加菲(类与对象+数组)
C. 音像制品(类与对象)
D. 三角形类(构造与析构)
E. CPU调度(类与对象)
F. 手机取款(类与对象数组)
G. Point&Circle(复合类与构造)
H. Equation(类与对象+构造)
I. Complex(类与对象+构造)
J. 分数运算(类+构造)
K. 存折类定义(类与对象)
L. 五子棋简单实现(类和对象)
M. 买彩游戏(类和对象)
O. Point_Array(类+构造+对象数组)
P. 分数类(类与构造)
Point_Array(类+构造+对象数组)
Q. 指针对象(类和对象)
R. 对象数组(类和对象)
T. 单链表(类与构造)
U. 生日打折(复合类构造)
V. 找出某个范围内的所有素数(构造与析构)
W. 任意鸡任意钱问题(构造与析构)
X. Date(类与构造)
X的放大与缩小(运算符重载)
Y. Point(类与构造)
Z. 最长雪道计算(构造与析构)
[. 那天是星期几(构造)
单链表(结构)
点和圆(类与对象)
单词统计(string)
时钟模拟(继承)
线段相交----结构体
正话反说
新旧身份证(继承)
简单类模板(类模板)
商旅信用卡(多重继承)
字符串合并(指针与函数)
母牛生小牛(静态数据成员与静态成员函数)
链表类模板
分数四则运算(结构)
判断点线位置(结构)
单链表的创建(结构体+链表)
单链表的删除(结构体+链表)
单链表的插入(结构体+链表)
单链表的查找(结构体+链表)
排序函数模板
字符串操作(string)
最贵的书(重载+友元+引用)
判断矩形是否重叠(结构)
判断矩形是否重叠(复合类+友元)
计算宝宝帐户收益(多重继承)
图形输出(抽象类+多层继承)
日程安排(多继承+友元函数)
约瑟夫环(结构体+循环链表)
对象相加函数模板
模拟时间(继承)
逆序输出函数模板
链表原地反转(链表)
图书借阅(对象数组+构造)
身份证设定(复合类+拷贝构造)
三数论大小(引用)
三数论大小(指针)
分数类(类与构造)
矩阵(运算符重载)
集合(运算符重载)
删除重复元素(结构体+链表+类)
三维空间的点(继承)
交通工具(多重继承)
会员积分(期末模拟)
元素查找(函数模板)
函数调用(函数指针)
加密模板(期末模拟)
加湿风扇(期末模拟)
复数运算(友元函数)
存折与信用卡(继承)
学生成绩计算(继承)
成绩查询(指针运算)
扑克牌排序(结构体)
指针对象(类和对象)
数据排序(函数模板)
最高成绩(静态成员)
月份查询(指针数组)
矩阵类模板(类模板)
计重转换(期末模拟)
访问数组元素(引用)
距离计算(友元函数)
金属加工(期末模拟)
立方体碰撞检测(复合类+动态对象数组+析构)
倚天屠龙记(函数模板)
动态数组(指针与数组)
动物园(虚函数与多态)
圆和圆柱体计算(继承)
在职研究生(多重继承)
学生类定义(类和对象)
小票输入输出(结构体)
教师类定义(类和对象)
求最大值最小值(引用)
点到原点的距离(继承)
矩形关系(运算符重载)
矩阵左转(指针与数组)
矩阵相乘(运算符重载)
矩阵相加(运算符重载)
货币加减(运算符重载)
向量的加减(运算符重载)
员工工资(虚函数与多态)
四进制加法(运算符重载)
图形面积(虚函数与多态)
大整数计算(运算符重载)
字符串比较(指针与字符)
字符串比较(运算符重载)
支票账户(虚函数与多态)
旅馆旅客管理(静态成员)
有界数组模板类(类模板)
汽车收费(虚函数和多态)
谁的票数最高(函数模板)
三串合一(指针与字符数组)
复数(输入输出运算符重载)
宠物的生长(虚函数和多态)
数字判断(指针为函数参数)
时钟调整(运算符前后增量)
求最大面积(虚函数和多态)
组链表与通讯录(期末模拟)
进位与借位(虚函数和多态)
人民币输出(输出运算符重载)
动态矩阵(指针与堆内存分配)
日期时间合并输出(友元函数)
复数的加减乘运算(运算符重载)
学生生日差值计算(运算符重载)
蛇形矩阵(指针与动态内存分配)
身份证号码升位(拷贝构造函数)
银行账户(静态成员与友元函数)
日期比较(运算符重载之类型转换)
计算学生成绩等级(虚函数和多态)
附加题、组链表与通讯录(期末模拟)