MchengY 2022-03-05 22:25 采纳率: 86.4%
浏览 32
已结题

数据结构顺序表主函数

问题遇到的现象和发生背景
#include<iostream>
using namespace std;
#define MAXSIZE 1042
typedef int elemtype;

typedef struct sequlist
{
    elemtype data[MAXSIZE];
    int last;
}SequenList;
SequenList*Init_SequenList()     //初始化
{
    SequenList*L;
    L=new SequenList;
    if(L!=NULL){
    
        L->last=-1;
    }
    return L ;
}
//输入
int Print_SequenList(SequenList*L,int n)
{
    int i;
    for(i=0;i<n;i++)
    {
        cin>>L->data[i];
        L->last++;
    }
    return 1;
}
int Shou_List(SequenList*L)
{
    int i;
    for(i=0;i<=L->last;i++)
    {    cout<<L->data[i];
    if(i%5==0)cout<<endl;
    }
    cout<<endl;
    return 1;
}
void main()
{
    int n;
    cin>>n;
    SequenList L;
    Print_SequenList(&L,n);    
    Shou_List(&L);
}

我想要达到的结果:

没有报错,就是可以输入,但输出不了

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2022-03-05 23:28
    关注

    主函数里,定义了SequenList L; ,但 L.last 没有初始化,供参考:

    #include<iostream>
    using namespace std;
    #define MAXSIZE 1042
    typedef int elemtype;
    
    typedef struct sequlist
    {
        elemtype data[MAXSIZE];
        int last;
    }SequenList;
    SequenList*Init_SequenList()//初始化
    {
        SequenList*L;
        L=new SequenList;
        if(L!=NULL){
    
            L->last=-1;
        }
        return L ;
    }
    //输入
    int Print_SequenList(SequenList*L,int n)
    {
        int i;
        for(i=0;i<n;i++)
        {
            cin>>L->data[i];
            L->last++;
        }
        return 1;
    }
    int Shou_List(SequenList*L)
    {
        int i;
        for(i=0;i<=L->last;i++)
        {    cout<<L->data[i];
             if((i+1)%5==0)cout<<endl; //if(i%5==0)cout<<endl; 修改
        }
        cout<<endl;
        return 1;
    }
    void main()
    {
        int n;
        cin>>n;
        SequenList L;
        L.last = -1;  //修改
        Print_SequenList(&L,n);
        Shou_List(&L);
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月14日
  • 已采纳回答 3月6日
  • 创建了问题 3月5日