没有合适的资源?快使用搜索试试~ 我知道了~
(完整word版)数据结构(C语言版)实验报告集合的交并差.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 55 浏览量
2022-10-16
12:18:42
上传
评论
收藏 806KB PDF 举报
温馨提示
试读
18页
(完整word版)数据结构(C语言版)实验报告集合的交并差.pdf(完整word版)数据结构(C语言版)实验报告集合的交并差.pdf
资源推荐
资源详情
资源评论
(完整 word 版)数据结构(C 语言版)实验报告集合的交并差
《数据结构与算法》实验报告
一、
需求分析
问题描述:
编制一个能演示执行集合的并、交和差运算的程序
基本要求:
集合元素限定为小写字母[’a’…’z’];演示程序以用户和计算机对话方式执行。集合的输
入形式为一个以“回车符”为结束标志的字符串,串中字符顺序不限,且允许出现重复字符
或非法字符,程序运用时自动过滤去,输出的运算结果中将不含重复字符和非法字符。计算机
终端中显示提示信息之后,由用户自行选择下一步命令,相应输入数据和运算结果在其后显示。
数据测试:
(1) Set1=”magazine”, Set2=’paper”,
Set1∪Set2=”aegimnprz”,Set1∩Set2=”ae”,Set1-Set2="gimnz”;
(2) Set1=”012oper4a6tion89”,Set2="error data",
Set1∪Set2=”adeinoprt”,Set1∩Set2=”aeort”, Set1—Set2="inp”.
二、
概要设计
运用顺序表
1。定义顺序表
typedef struct SET{
char *elem;
int size;
int length;
}set;
(完整 word 版)数据结构(C 语言版)实验报告集合的交并差
2 基本操作:
set InitSet(set s);
//初始化集合
set Input(set s);
//向集合中输入元素
set InsertSet(set s, char e);
//向集合中插入元素
set DelateSet(set s,int n);
//从集合中删除元素
void display(set s);
//显示集合
set SetMix(set set1,set set2,set set3);
//求集合的交集
set check(set s);
//检查集合中是否有数字或者重复字母
set Sort(set s);
//对集合中的元素进行排序
三、
详细设计
1.
头文件
#include〈stdio.h〉
#include〈stdlib.h>
#include〈string。h〉
2.
定义
(完整 word 版)数据结构(C 语言版)实验报告集合的交并差
#define MAX_SIZE 20(顺序表的初始大小)
#define ADD_SIZE 10(顺序表的递增大小)
3.
结构类型
typedef struct SET{
char *elem;
int size;
int length;
}set;
4。 初始化集合
set InitSet(set s){
}
s.elem=(char*)malloc(MAX_SIZE*sizeof(char));
s。size=MAX_SIZE;
s。length=0;
return s;
5。 向集合中输入元素
set Input(set s){
char *newbase;
gets(s.elem);
s.length+=strlen(s.elem);
if(s.size〈=s.length){
(完整 word 版)数据结构(C 语言版)实验报告集合的交并差
}
newbase=(char*)realloc(s。elem,(s。size+ADD_SIZE)*sizeof(char));
s。elem=newbase;
s。size+=ADD_SIZE;
return s;
}
6.向集合中插入元素
set InsertSet(set s,char e){
s。elem[s.length]=e;
s.elem[s.length+1]=’\0’;
s。length++;
return s;
}
7.从集合中删除元素
set DelateSet(set s,int n){
int i;
for(i=n;i〈=s。length;i++){
}
s.length—-;
return s;
}
8.显示集合
s.elem[i—1]=s。elem[i];
剩余17页未读,继续阅读
资源评论
春哥111
- 粉丝: 1w+
- 资源: 5万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功