#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));
}
不知道为什么这个插入函数不起作用,输出的还和原来的一样!
如果知道请务必指点一下,在下感激不尽!



											
	    

	
