关于数据结构顺序表的内容,为什么调用函数ShowSeqlist无法正常显示?

#include
#define MAXLISTLEN 100
int ListLen=0,SeqList[MAXLISTLEN+1];
void SearchSeqList();
void InsertSeqList();
void DeleteSeqList();
void ShowSeqList();

int main(void)
{
int r[MAXLISTLEN],i,SearchPos,NewPos,Newltem,DelPos;
scanf("%d",&ListLen);
for (i=1;i<=ListLen;i++)
{
scanf("%d",&SeqList[i]);
}
ShowSeqList();
printf("输入查找元素的下标");
scanf("%d",&SearchPos);
SearchSeqList(SearchPos);
printf("输入插入位置与元素");
scanf("%d %d",&NewPos,&Newltem);
InsertSeqList(NewPos,Newltem);
ShowSeqList();
printf("输入要删除的元素下标");
scanf("%d",&DelPos);
DeleteSeqList(DelPos);
ShowSeqList();

}

int SearchSeqList(int i)
{
if((i>ListLen)||(i<1)||(ListLen=0))
else
{
return SeqList[i];
}
}

int InsertSeqList(int i,int Newltem)
{
int j;
if ((i>ListLen+1)||(i for(j=ListLen;j>=i;j--)
{
SeqList[j]=SeqList[j-1];
}
SeqList[j]=Newltem;
ListLen++;

}

int DeleteSeqList(int i)
{
int j;
if((i>ListLen)||(i<1)||(ListLen==0))
for(j=i;j<=ListLen;j++)
{
SeqList[j]=SeqList[j+1];
}
ListLen--;
}

int ShowSeqList()
{
int i;
for(i=1;i<=ListLen;i++)
{
printf("%d ",SeqList[i]);
}
printf("\n");
}
图片说明
代码跟结果图在这为什么ShowSeqlist调用函数不会出现新的顺序表?

问题如果得到解决,麻烦点下我回答右边的采纳,谢谢

你的代码居然能运行?
if((i>ListLen)||(i<1)||(ListLen=0))
else
{
return SeqList[i];
}
这里if后面什么没有就else能编译通过?阴吹思婷。

你明明定义的是void SearchSeqList();又没有参数
SearchSeqList(SearchPos);这里参数哪里来的?

我怀疑你根本都没编译,运行的是之前的程序吧。

 #include<stdio.h>
#define MAXLISTLEN 100
int ListLen=0,SeqList[MAXLISTLEN+1];
int SearchSeqList(int i);
void InsertSeqList(int i,int Newltem);
void DeleteSeqList(int i);
void ShowSeqList();

int main(void)
{
int r[MAXLISTLEN],i,SearchPos,NewPos,Newltem,DelPos;
    scanf("%d",&ListLen);
    for (i=1;i<=ListLen;i++)
    {
      scanf("%d",&SeqList[i]);
    }
    ShowSeqList();
    printf("输入查找元素的下标");
    scanf("%d",&SearchPos);
    SearchSeqList(SearchPos);
    printf("输入插入位置与元素");
    scanf("%d %d",&NewPos,&Newltem);
    InsertSeqList(NewPos,Newltem);
    ShowSeqList();
    printf("输入要删除的元素下标");
    scanf("%d",&DelPos);
    DeleteSeqList(DelPos);
    ShowSeqList();

}

int SearchSeqList(int i)
{
    if((i>ListLen)||(i<1)||(ListLen==0)) return -1; //注意==和=的区别。
    else
    {
    return SeqList[i];
    }
}

void InsertSeqList(int i,int Newltem)
{
    int j;
    if ((i>ListLen+1)||(i<1)||(ListLen==MAXLISTLEN)) return;
    for(j=ListLen;j>=i;j--)
    {
        SeqList[j]=SeqList[j-1];
    }
    SeqList[j]=Newltem;
    ListLen++;


}

void DeleteSeqList(int i)
{
    int j;
    if((i>ListLen)||(i<1)||(ListLen==0)) return;
    for(j=i;j<=ListLen;j++)
    {
        SeqList[j]=SeqList[j+1];
    }
    ListLen--;
}

void ShowSeqList()
{
    int i;
    for(i=1;i<=ListLen;i++)
    {
        printf("%d ",SeqList[i]);
    }
    printf("\n");
}


图片说明

SearchSeqList(SearchPos);
你没有接收和显示
应该是
int r = SearchSeqList(SearchPos);
printf("查找结果 %d", r);