- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
/*
作业要求:
试编写一算法,实现两个顺序表的合并。(说明:将共同拥有的元素只存其一。)
缺点:
1.因为是第一次上机,没有顾及到良好的人际界面和程序流程。
2.并且没有将VC可输出中文的良好功能利用起来
3.试验了一下,发现在一个顺序表内不能输入相同的元素
心得:
重新熟悉了一下C语言,为以后的编程提供了基础
*/
#includestdio.h
#includestdlib.h
#define SeqList struct listtype
#define MaxSize 1000
SeqList
{
int data[MaxSize];
int last;
};
void fuzhi(SeqList *L) //用键盘连续输入顺序表的值
{
int a;
printf(input number,0 will exit\n);
scanf(%d,a);
while((a!=0)(L-last999))
{
L-last++;
if(a!=0)
L-data[L-last] = a;
scanf(%d,a);
}
}
main()
{ int i,j;
SeqList *a,*b,*c;
a = malloc(sizeof(SeqList));
a-last = -1;
b = malloc(sizeof(SeqList));
b-last = -1;
c = malloc(sizeof(SeqList));
c-last = -1; //对三个顺序表进行初始化
fuzhi(a);printf(OK\n);//试验了一下,发现在一个顺序表内不能输入相同的元素
fuzhi(b);printf(OK\n);//在两个顺序表之间却可以
for(i=0;i=a-last;i++)
{
c-data[i]=a-data[i];
}
c-last = a-last;//将a顺序表的值先赋给c顺序表
for(i=0;i=b-last;i++)
{
for(j=0;j=c-last;j++)
{
if(b-data[i]==c-data[j])
break;//排除b顺序表与c顺序表中相同的元素
}
if(jc-last) {c-last++;c-data[c-last]=b-data[i]; }
}//若查找发现没有相同,则添加入c顺序表
for(i=0;i=c-last;i++)
{
printf(%d\t,c-data[i]);
}//输出c顺序表中的各个元素
printf(\n);
}
/*
作业内容:
线性表的定义、创建、插入和删除操作,并将数据元素显示出来
缺点:
本程序只能够用一遍,也就是说建立后就没法在此建立了
优点:
照顾到了程序结构的合理排布,并加入了良好的人机界面
心得:
此程序很简单,但是还是用上了结构体,是为了熟悉他的操作和应用
*/
#includestdio.h
#includestdlib.h
#includeconio.h
#includeiostream.h
#includectype.h
#includefstream.h
#includeiomanip.h
#include windows.h
/***********结构体***********/
#define Seqlist struct listtype
Seqlist
{
int data[1000];//存储元素值
int last;//元素个数
};
/*************函数声明***********/
chuangjian(Seqlist *);
insert(Seqlist *);
delet(Seqlist *);
display(Seqlist *);
search(Seqlist *);
/***********主函数************/
main()
{
Seqlist *L;char a;
L=malloc(sizeof(Seqlist));
L-last=-1;//初始化
while(1)
{
printf(chuangjian = 1\n);
printf(insert = 2\n);
printf(delete = 3\n);
printf(display = 4\n);
printf(search = 5\n);
scanf(%d,a);//人机界面
switch(a)
{
case 1:chuangjian(L);break;
case 2:insert
您可能关注的文档
最近下载
- 《市级国土空间生态修复规划编制指南》.pdf
- 坠床跌倒护理持续质量改进ppt.pptx
- 英语新闻ppt(含讲稿).pptx VIP
- 感觉信息处理及自我调节能力检核表Sensoryprocessingandself-regulationchecklist,SPSRC.docx
- 做守纪知纪明纪的模范.pptx VIP
- 餐厅服务方案.docx VIP
- 苏教版三年级数学上册知识点整理.docx VIP
- 【微专题】2014-2024高考语文文言文挖空训练( I 卷、II 卷、甲卷、乙卷)教师版.doc VIP
- 公司安全事故隐患内部举报、报告奖励制度范本.docx
- 第一单元《中国共产党的领导》练习题试题含答案.docx VIP
文档评论(0)