实验1-1 线性表顺序存储结构的操作与应用案例的实现

代码运行出现问题,求帮忙更改代码指出错误
原问题是
写一个主函数main(),来检验上述应用函数是否正确,实现以下操作:

(1)数据准备。生成2个顺序表LA、LB,其数据元素分别为:

        LA=(2,8,27,39,66,77,89LB=(6,18,27,59,65,77,89,120,140

顺序表生成后分别输出它们各元素的值。

#include<stdio.h>
#include<stdlib.h>
#pragma warning(disable : 4996)
#define _CRT_SECURE_NO_WARNINGS

#define OK         1
#define ERROR   0
#define TRUE    1
#define FALSE    0
#define INFEASIBLE -1
#define OVERFLOW -2
#define MAXSIZE    100

typedef int ElemType;  //声明ElemType的类型

typedef int Status;  //声明函数类型名

typedef struct SqList {

    ElemType* elem;  //顺序表数据存储空间基址 

    int length;

}SqList;// LIST为用户定义的线性表类型

Status InitList(SqList& L) {                                          //用于创建数组
    L.elem = new ElemType[MAXSIZE];
    if (L.elem == 0)
        exit(OVERFLOW);
    L.length = 0;
    return 0;
}

Status ListTraverse(SqList L) {                                   //显示数组里面的元素 
    int i;
    printf("%d\n", L.length);
    for (i = 0; i <= L.length - 1; i++)
    {
        printf("%d", L.elem[i]);
    }
    printf("\n");
    return 0;
}
int main() {
    struct SqList La, Lb;
    int i = 0;
    int j = 0;
    puts("!!!");
    InitList(La);

    puts("!!!");
    InitList(Lb);

    puts("!!!");
  //  printf("%s", Lb.elem);
    printf("La\n");
    while (scanf("%d",&La.elem[i++]) != EOF);
    printf("Lb\n");
    i = 0;
    while (scanf("%d",&Lb.elem[i++]) != EOF);
    ListTraverse(La);
    ListTraverse(Lb);
    return 0;
}