#include"stdio.h"
#include"stdlib.h"//颜色属性
#define maxsize 100
typedef struct
{
int data[maxsize];
int last;
}link;
void shuchu(link *head)
{
int i;
link *q;
q=head;
printf("这个序列为:\n");
for(i=1;i<=q->last;i++)
{
printf("%d\t",q->data[i]);
}
printf("\n");
}
void paixu(link *head,int x)
{
int i;
link *a=head;
for(i=a->last;x<a->data[i];i--)//若插入的数比后一个数小,则后一个数后移
{
a->data[i+1]=a->data[i];
}
a->data[i+1]=x;
a->last++;
}
int shuru(link *head,int n)
{
int i,x;
head->last=0;
if(n>=1)
{
for(i=1;i<=n;i++)
{
printf("请输入第%d个元素:\t",i);
scanf("%d",&x);
paixu(head,x);
}
return 1;
}
else
return 0;
}
main()
{
link head;//注:这里不要写成 link *head;不是申请空间的话不要加*;
int n;
printf("请输入你要构建的序列的长度:\t");
scanf("%d",&n);
if(shuru(&head,n)==1)
{
printf("此表的长度为:%d\n",n);
shuchu(&head);
}
else
{
system("color 4");//颜色,构建失败会变红
printf("构建失败\n");
}
}
成功:
失败: