1、 课程设计专用纸 沈阳理工大学 课 程 设 计 任 务 书 学院 信息科学与工程 专业 通信工程 学生姓名 学号 设计题目 集合类的设计与实现 内容及要求: 本课程设计主要是集合的交、并和差运算的研究与实现,用有序单链表表示 集合,实现集合的交、并和差运算。研究表明,采用有序存储的运算简单、方便。 通过类与对象的设计,编制一个能演示执行集合的并、交和差运算的程序, 要求如下: (1)集合的元素限定为小写字母字符a,z。 (2)演示程序以用户和计算机的对话方式执行。 (3)以有序链表表示集合。 (4)可进一步实现集合的元素判定和子集判定运算。 进度安排: 第 17 周:分析题目,查阅课题相关资料
2、,进行类设计、算法设计; 第 18 周:程序的设计、调试与实现; 第 19 周:程序测试与分析,撰写课程设计报告,进行答辩验收。 指导教师(签字) : 年 月 日 学院院长(签字) 年 月 日 课程设计专用纸 沈阳理工大学 目目 录录 1 需求分析需求分析 . - 1 - 2 算法基本原理算法基本原理 . - 1 - 图图 2-1 单链表流程图单链表流程图 - 2 - 3 类设计类设计. - 3 - 4 详细设计详细设计 . - 3 - 4.1 类的设计和实现类的设计和实现 - 3 - 4.2 主函数设计主函数设计 - 9 - 5 DOS 界面程序运行结果及分析界面程序运行结果及分析 . -
3、10 - 5.1 程序运行结果程序运行结果 - 10 - 5.2 运行结果分析运行结果分析- 11 - 6 基于基于 MFC 的图形界面程序开发的图形界面程序开发 - 12 - 6.1 基于基于 MFC 的图形界面程序设计的图形界面程序设计 . - 12 - 6.2 程序测试程序测试 - 15 - 6.3 MFC 程序编写总结程序编写总结 . - 19 - 7 参考文献参考文献 . - 20 - 课程设计专用纸 - 1 - 1 需求分析需求分析 (1)本演示程序中,集合的元素限定为小写字母字符az,集合 的大小 nnext=NULL; Head-data=0; cinch; while(ch!
4、=#) Node *newNode=(Node*)malloc(SIZE); newNode-data=ch; p-next=newNode; p=p-next; cinch; p-next=NULL; int Check(char ch,LinkList Head) Node *temp=Head-next; int flag=TRUE; while(temp!=NULL) if(temp-data=ch) flag=FALSE; return flag; temp=temp-next; return flag; /合并两个集合 LinkList Merge(LinkList Head1,LinkList Head2) 课程设计专用纸 - 5 - LinkList Head=(Node*)malloc(SIZE); Head-data=0;Head-next=NULL; Node *p1=Head1-next;