#include <iostream.h>
#include <stdio.h>
#define MAXNUM 20
int D;
int *creat_list(){//顺序表的创建//
int i ,ch,*list;
list=new int[MAXNUM];
for(i=0;i<MAXNUM;i++)
list[i]=0;
cout<<"请输入元素,最多18个,以-1结束"<<endl;
i=0;
while (ch!=-1)
{
cin>>ch;
list[i]=ch;
i++;
};
D=i;
return list;
}
void display_list(int *list){//顺序表的展开//
cout<<"输出"<<endl;
int i=0;
while(list[i]!=-1)
cout<<list[i++];
cout<<endl;
}
int *insertelement(int locat,int ielement,int *list){//顺序表的插入//
for (int i=D+1; i>locat;i--)
list[i]=list[i-1];
list[locat]=ielement;
return list;
}
void main(){
int *p,LOCAT,IELEMENT;
p=creat_list();
display_list(p);
cout<<"请输入要插入元素及其位置"<<endl;
cin>>LOCAT;
cin>>IELEMENT;
display_list(insertelement(LOCAT,IELEMENT,p));
}
不知道为什么这个插入函数不起作用,输出的还和原来的一样!
如果知道请务必指点一下,在下感激不尽!