📄 test01.txt
字号:
#include <stdio.h>
typedef int Elemtype;
#define MaxLen 50
typedef struct _SQLIST
{
Elemtype data[MaxLen];
int len;
}SQList;
//置空表
void SetNull (SQList *l)
{
l->len = 0;
}
//求长度
int GetLength(SQList l)
{
return (l.len);
}
//取表中第i个节点
Elemtype GetNode(SQList l, int i)
{
if ((i < 0) || (i > (l.len -1)))
{
printf("位置参数%d 不正确", i);
}
return (l.data[i]);
}
//按值查找
int locate (SQList l, Elemtype x)
{
int i = 0;
while ((i < l.len) && (l.data[i] != x))
{
i ++;
}
if (i == l.len)
{
return (-1);
}
return i;
}
//插入节点
int InsNode(SQList *l, Elemtype x, int i)
{
int j;
if (i<0 || i>l->len)
{
return 0;
}
else
{
l->len ++;
for (j=l->len-1; j>i; j--)
{
l->data[j] = l->data[j-1];
}
l->data[j] = x;
return 1;
}
}
//删除第 i 个节点
int DelNode (SQList *l, int i)
{
int j;
if (i<0 || i>l->len-1)
{
return 0;
}
for (j=i; j<l->len-1; j++)
{
l->data[j] = l->data[j+1];
}
l->len --;
return 1;
}
//显示线性链表
void Display (const SQList l)
{
int j;
printf("顺序表:");
if (l.len == 0)
{
printf ("空表");
}
if (l.len == 1)
{
printf("%d", l.data[0]);
return;
}
for (j=0; j<l.len-1; j++)
{
printf("%d-->", l.data[j]);
}
printf("%d\n", l.data[j]);
}
void main()
{
int i;
SQList l;
for (i=0; i<10; i++)
{
l.data[i] = i* 10;
}
l.len = 10;
Display(l);
//插入一节点在3位置
InsNode(&l, 100, 10);
Display(l);
//删除一节点
DelNode(&l, 5);
Display(l);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -