以下是在顺序表类型定义 typedef struct node1{ char xh[3]; char name[7]; int cxsj; int ty; }xscj; //定义顺序表 顺序表的类型名为seqlist typedef struct node2{ //顺序表的数组空间 xscj data[100]; int length; }seqlist; 下面是判断顺序表存储对象是否已满的算法,如果已返回1,否则返回0,请完成该算法代码 int full(seqlist *x) { if( ) return 1; else return 0; } //该算法应该是以已经存在的顺序表基础上实施的,因此该算法函数应该有形式参数的 seqlist *add_list(seqlist *x) { //定义一个元素类型的指针变量 xscj *ele; //创建一个xscj类型的数据元素,并且把该数据元素的地址赋给ele ele=( ) //完成元素结点空间的创建 printf("请输入新元素的"); scanf("%s",ele->xh);//strcpy(ele->xh,"01"); scanf("%s",ele->name); scanf("%d",&ele->cxsj); scanf("%d",&ele->ty); if( ) { printf("顺序表已满,元素添加失败!!!"); return x; } else { ( ) //把新元素追加到顺序表当前的尾部结点的后面 ( ) //因为已经追加了一个结点元素进来,所以要修改顺序表的长度。 return x; } } //设计实现顺序表的元素结点的插入算法 seqlist *insert_list(seqlist *x,int xh) { xscj *ele; int i; if( ) { printf("目标插入位置非法!!!"); return x; } if( ) { printf("顺序表已满,拒绝新元素结点插入!!!"); return x; } ele=(xscj *)malloc(sizeof(xscj)); //完成元素结点空间的创建 printf("请输入新元素的"); scanf("%s",ele->xh); scanf("%s",ele->name); scanf("%d",&ele->cxsj); scanf("%d",&ele->ty); //把从顺序表终端元素一直到目标位置上的所有元素从大下标到小下标依次后移后移 for( ) ( ) //把新元素 存入第xh号位置的单元 ( ) //因为已经追加了一个结点元素进来,所以要修改顺序表的长度。 ( ) return x; }