初学者求助,急啊
刚接触数据结构,对于如何编实现算法操作感到很迷惑。下面是我写的删除顺序表中一个值为x的元素的c程序,能通过编译但是不能运行得到最后结果。麻烦各位看看,不吝赐教啊。#include <stdio.h>
#include <math.h>
#define max_size 100
typedef struct
{
int data[max_size];
int length;
}seqlist;
void creatlist(seqlist &l,int n) //创建顺序表
{
printf("输入建立%d个数据的线性表!\n",n);
for(int i = 0;i <= n;i ++)
{
scanf("%d",&l.data[i]);
}
l.length = n;
}
void deleteV_seq(seqlist &l,int x) //删除数据
{
for(int j = 0;j < l.length - 1;j ++)
{
printf("输入想要删除的数据:");
scanf("%d",&x);
if (l.data[j-1] == x)
{
l.data[j-1] = l.data[j];
l.length --;
printf("删除的数据为%d",l.data[j-1]);
}
}
}
void main()
{
int k;
seqlist l;
creatlist(l,10);
for(k =0;k < l.length;k ++)
printf("%3d",l.data[k]);
deleteV_seq(l,5);
for(k =0;k < l.length;k ++)
printf("%3d",l.data[k]);
}