类似新建表但没有建新表。
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef int elemtype;
typedef struct
{
elemtype *elem;
int length;
int listsize;
}sq;
int sqlist(sq *l)
{
l->elem=(elemtype *)malloc(10000*sizeof(elemtype));
if(!l->elem) return -1;
l->length=0;
l->listsize=10000;
return 0;
}
int listinsert(sq *l,int k)
{
int i;
for(i=0;i<k;i++)
{
scanf("%d",&l->elem[i]);
}
l->length=1;
return 0;
}
void loclist(sq *l,int n)
{
elemtype *p,*q;
for(q=l->elem+1; q<l->elem + n; q++)
{
int flag=1;
for(p=l->elem; p<l->elem + l->length; p++)
{
if(*p==*q)
{
flag=0;
break;
}
}
if(flag==1)
{
l->elem[l->length]=*q;
l->length++;
}
}
}
void display(sq *l)
{
int i;
for(i=0;i<l->length-1;i++)
{
printf("%d ",l->elem[i]);
}
printf("%d\n",l->elem[l->length-1]);
}
int main()
{
sq l;
int n,i,m;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&m);
sqlist(&l);
listinsert(&l,m);
loclist(&l,m);
display(&l);
}
}