blob: c2b753b3c82704bb2db7c2d0d95cf53c84246f7c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# 数据结构实验 04
## 功能简介
本项目使用 GNU C11 实现一个简单的终端计算器,包含:
- 线性表的添加、插入、删除、修改、查找和遍历;
- 向量加法、减法和夹角余弦计算;
- 顺序表多项式的加减、乘法和求导;
- 链表多项式的加减、乘法和求导。
- 四则运算表达式求值。
底层实现使用自定义的 `vec` 动态数组和循环双向链表。
## 编译说明
在项目根目录执行:
```sh
make
```
默认使用 GNU C11 标准编译,生成可执行文件 `calculator`。
编译参数包括 `-std=gnu11 -Wall -Wextra -O2`,链接时使用数学库 `-lm`。
清理编译文件:
```sh
make clean
```
## 使用说明
运行程序:
```sh
./calculator
```
在主菜单中选择线性表、向量、顺序表多项式,链表多项式或者四则运算表达式功能。菜单支持方向键或 `j`/`k` 移动,按 Enter 确认,按 `Esc` 或 `q` 返回或退出。
运行测试:
```sh
make test
```
|