实验一 线性表1 实验目的 通过选择下面四个题目之一进行实现,掌握如下内容:> 熟悉C++语言的基本编程方法,掌握集成编译环境的调试方法> 学习指针、模板类、异常处理的使用> 掌握线性表的操作的实现方法> 学习使用线性表解决实际问题的能力2 实验内容2
1题目1 根据线性表的抽象数据类型的定义,选择下面任一种链式结构实现线性表,并完成线性表的基本功能
线性表存储结构(五选一):1、 带头结点的单链表2、 不带头结点的单链表3、 循环链表4、 双链表5、 静态链表 线性表的基本功能:1、 构造:使用头插法、尾插法两种方法2、 插入:要求建立的链表按照关键字从小到大有序3、 删除4、 查找5、 获取链表长度6、 销毁7、 其他:可自行定义 编写测试main()函数测试线性表的正确性
2题目2 利用线性表实现一个通讯录管理,通信录的数据格式如下: struct DataType { int ID; //编号 char name[10]; //姓名 char ch; //性别 char phone[13]; //电话 char addr[31]; //地址 }; 要求:> 实现通讯录的建立、增加、删除、修改、查询等功能> 能够实现简 单的菜 单交 互 ,即 可以 根据用户 输 入的命 令 ,选择不同 的操作
> 能够保 存每 次 更 新 的数据(选作)> 能够进行通讯录分 类,比 如班 级 类、好 友 类、黑 名单等等(选作)> 编写测试main()函数测试线性表的正确性2
3题目3 利用线性表实现一个一元 多 项 式Polynomial f(x) = a0 + a1x + a2x2 + a3x3 +
+ anxn 提 示 : Polynomial的结点结构如下: struct term { float coef; //系数 int expn; //指数 }; 可以使