数据结构问题~~

来源:百度知道 编辑:UC知道 时间:2024/07/08 19:09:27
/*在一个数组,输入一个数插入到一个数组中*/
typedef struct
{
int datas[100];
int last;
}sequenlist;
main()
{
sequenlist a;
int i,k,m,x;
printf("please input element,the element for integer,use blank space separate,input -99 for over:\n");
a.last=0;i=0;scanf("%d",&i);
while(i!=-99){
k=a.last;
while((k>=1)&&(i<a.datas[k]))k--;
for(m=a.last;m>=k+1;m--)
a.datas[m+1]=a.datas[m];
a.datas[k+1]=i;
a.last++;
scanf("%d",&i);
}
printf("input will insert element value(integer):");
scanf("%d",&x);
printf("\n insert before sequen element list:");
for(i=1;i<=a.last;i++)
printf("%4d",a.datas[i]);
printf("\n");
i=a.last;
while((i>=1)&&(x<a.datas[i]))i--; /*search insert site 'i'*/
for(m=a.last;m>=i+1;m--)a.datas[m+1]=a.datas[m]

while((k>=1)&&(i<a.datas[k]))k--; //这句是查找插入新数据的
//位置
for(m=a.last;m>=k+1;m--)a.datas[m+1]=a.datas[m]; //这句是把第 k+1
//到最后位置的数据依次往后面挪一个位置,空出第 k+1 的位置,以便插
//入新数据

参考答案每一粒厄运的种子,却包孕着未来丰盛的果实。--莎士比亚