📄 顺序表插入.cpp
字号:
#include <stdio.h>
#include <stdlib.h>
/*顺序表的定义:*/
#define ListSize 100 /*表空间大小可根据实际需要而定,这里假设为100 */
typedef int DataType; /*DataType可以是任何相应的数据类型如int, float或char */
typedef struct
{ DataType data[ListSize]; /*向量data用于存放表结点 */
int length; /*当前的表长度 */
}SeqList;
/*顺序表的插入:*/
void InsertList(SeqList *L,DataType x,int i)
{/*将新结点x插入L所指的顺序表的第i个结点的位置上 */
int j;
if (i<1 || i>(*L).length+1)
{
printf("插入位置非法");
exit(0);
}
if ((*L).length>=ListSize)
{
printf("表空间溢出,退出运行");
exit(0);
}
for (j=(*L).length-1;j>=i-1;j--)
(*L).data[j+1]=(*L).data[j];
(*L).data[i-1]=x;
(*L).length++;
}
/*顺序表的打印:*/
void PrintList(SeqList L,int n)
{ int i;
for (i=0;i<L.length;i++)
printf("%d ",L.data[i]);
printf("\n");
}
main()
{
SeqList L;
int i,n=10;
DataType x;
for (i=0;i<n;i++)
L.data[i]=rand()%100;
L.length=n;
PrintList(L,n); /*打印顺序表 */
printf("输入要插入的位置:");
scanf("%d",&i);
printf("输入要插入的元素:");
scanf("%d",&x);
InsertList(&L,x,i); /*顺序表插入 */
PrintList(L,n); /*打印顺序表 */
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -