顺序表的创建—数据结构算法

代码功能截图:

部分源码:

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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#include<stdio.h>
#include<stdlib.h>
#define MAXSIZE 20
typedef int ElemType;
typedef struct
{ ElemType a[MAXSIZE];
int length;
}SqList;
SqList a,b,c;
void creat_list(SqList *l);
void out_list(SqList l);
void insert_sq(SqList *l,int i,ElemType e);
ElemType delete_sq(SqList *l,int i);
int locat_sq(SqList l,ElemType e);
int main()
{int i,k,loc;ElemType e,x;char ch;
do{
printf("\n");
printf("\n 1.建立顺序表");
printf("\n 2.插入元素");
printf("\n 3.删除元素");
printf("\n 4.查找元素");
printf("\n 0.结束程序运行");
printf("\n============================");
printf("\n 请输入您的选择(1,2,3,4,0) \n");
 
scanf("%d",&k);
switch(k)
{case 1:{creat_list(&a);
out_list(a);
} break;
case 2:{printf("\n 请输入插入位置(大于等于1,小于等于%d):",a.length+1);
scanf("%d",&i);
printf("\n 请输入要插入元素值:");
scanf("%d",&e);
insert_sq(&a,i,e);
out_list(a);
} break;
case 3:{printf("\n 请输入要删除的元素的位置(大于等于1,小于等于%d):",a.length);
scanf("%d",&e);
x=delete_sq(&a,e);
out_list(a);
if(x!=-1) printf("\n删除的元素为:%d\n",x);
else printf("要删除的元素不存在!");
} break;
case 4:{printf("\n 请输入要查找元素值:");
scanf("%d",&e);
loc=locat_sq(a,e);
if(loc==-1) printf("\n未找到指定元素!");
else printf("已找到,元素位置是%d",loc);
}break;
}/*switch*/
}while(k!=0);
printf("\n 按Enter键,返回...");
// ch=getchar();
}/* main*/
/*建立顺序表*/
void creat_list(SqList *l)
{ int i;
printf("请输入顺序表的长度:");
scanf("%d",&l->length);
for(i=0;i<l->length;i++)
{ printf("数据 %d=",i);
scanf("%d",&(l->a[i]));
}
}/*creat_list*/
 
/*输出顺序表*/
void out_list(SqList l)
{int i;
for(i=0;i<=l.length-1;i++)
printf("%10d",l.a[i]);
}/*out_list*/
 
/*在顺序表的第i个位置插入元素e*/
void insert_sq(SqList *l,int i,ElemType e)
{ int j;
if(l->length==MAXSIZE) printf("顺序表已满!\n");
else if (i<1||i>l->length +1) printf("输入位置错误\n");
else{
for(j=l->length-1;j>=i-1;j--) l->a[j+1]=l->a[j];
l->a[i-1]=e;
l->length++;
}
}/*insert_sq*/

  

注意这里仅为部分代码。获取源码请关注“值南针”微信公众号:可用电脑微信关注或手机关注。在电脑方便。直接下载源码。

 

 

 

点击下载直接就可以用的。

 

posted @   值南针  阅读(2106)  评论(0编辑  收藏  举报
编辑推荐:
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
阅读排行:
· 手把手教你更优雅的享受 DeepSeek
· AI工具推荐:领先的开源 AI 代码助手——Continue
· 探秘Transformer系列之(2)---总体架构
· V-Control:一个基于 .NET MAUI 的开箱即用的UI组件库
· 乌龟冬眠箱湿度监控系统和AI辅助建议功能的实现
点击右上角即可分享
微信分享提示