【填空题】
请根据注释和前后文内容,将下方横线处的代码补充完整。
#include <stdio.h>
#define ListSize 100 //定义一个宏名ListSize=100
typedef int Datatype;//给数据类型int起别名为Datatype
typedef struct{
1 ;//顺序表主要采用一维数组作为存储结构
2 ;//顺序表的长度,顺序表下标从0开始计算,等于总长度减一。
}SeqList;
//初始化顺序表
void InitList(SeqList *L){
//顺序表的长度为0
L->Length = 0;
}
//查找,返回对应位置
int FindList(SeqList *L, Datatype x){
int i;
//遍历顺序表
for (i = 0; i < L->Length; i++){
//如果当前位置值与查找值相等,返回当前位置
if ( 3 )
{
return i+1;
}
}
//若找到最后一个位置的值与查找值都不相等,则返回-1
if (i == L->Length){
return -1;
}
}
void OutputList(SeqList *L) {
int j;
//判断表的长度。
if (L->Length == 0) {
ERROR("表空,无法输出节点!");
}
for (j = 0; j <= L->Length - 1; j++){
printf("%5d", L->data[j]);
}
printf("\n");
}
//插入
void InsertList(SeqList *L,Datatype x,int i){
int j;
//判断插入位置的合法性。
if (i<1 || i > L->Length + 1){
ERROR("位置信息错误!");
}
//判断表的长度。
if ( 4 ){
ERROR("表满,无法插入新节点!");
}
//要插入位置到最后位置的元素后移
for (j = L->Length - 1; j >= i - 1; j--){
L->data[j+1]=L->data[j];
}
//将要插入的元素插入
5 ;
//表的长度增加1
6 ;
}
//删除
void DeleteList(SeqList *L, int i){
int j;
//判断删除位置的合法性
if (i < 1 || i > L->Length){
ERROR("位置信息错误!");
}
//判断表的长度。
if ( 7 ){
ERROR("表空,无法删除!");
}
//删除的下一个位置到最后位置的元素前移
for (j = i; j <= L->Length - 1; j++){
8 ;
}
//表的长度减1
9 ;
}
void main(){
SeqList L;
InitList(&L);
Datatype x;
int i;
//输出提示语句
10 ("输入10个节点值:\n");
for (i = 0; i<10; i++){
//输入节点x的值
scanf("%d",&x);
//将x的值插入到顺序表L的i位置
11 (&L,x,i);
}
printf("输入删除位置的下标:\n");
scanf("%d",&i);
//删除i位置的节点
12 (&L, i);
printf("输入所有的成绩:\n");
OutputList(&L);
}
第1空:
第2空:
第3空:
第4空:
第5空:
第6空:
第7空:
第8空:
第9空:
第10空:
第11空:
第12空:
int data;
SeqList * next;
依次类推完成以下部分
您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632