线性表怎么在主函数里赋值

img


题目是这样的,我现在的问题就是主函数main里面怎么给线性表赋值为题目中的数


#include <iostream>
#include<stdlib.h>
#define max 100
typedef int element;
typedef struct sList {
    element data[max];
    int listLen;
}seqList;
void initialList(seqList* L) {
    L->listLen = 0;
}
int listLength(seqList* L) {
    return L->listLen;
}
int listDelete(seqList* L, int i) {
    int j,k;
    if (i<1 || i>L->listLen)
        return 0;
    else if (L->listLen <= 0)
        return 0;
    else {
        for (j = i; j < L->listLen; j++) {
            L->data[j - 1] = L->data[j];
            k++;
            L->listLen--;
        }
        return k;
    }
}
int repeat(seqList* L ) {
    int j=0,i;
    for (i = 0; i < L->listLen - 1; i++) {

        while (i)
        {
            if (L->data[i] == L->data[i + 1])
                j += listDelete(L, i + 1);
            else
                break;
        }
    }
    return j;
}
int main() {
    seqList* L = (112223455566778889);
     repeat(L);

我这代码还没写完,但是主函数里报错了,说找不到用户定义的文本运算符

你没有写给顺序表增加值的函数啊

#include <iostream>
#include<stdlib.h>
#define max 100
typedef int element;
typedef struct sList {
    element data[max];
    int listLen;
}seqList;
void initialList(seqList* L) {
    L->listLen = 0;
}
int listLength(seqList* L) {
    return L->listLen;
}
int listAdd(seqList *L, int n){

    if(L->listLen >= max)
        return 0;
    L->data[L->listLen++] = n;
    return 1;
}
int listDelete(seqList* L, int i) {
    int j,k=0;
    if (i<1 || i>L->listLen)
        return 0;
    else if (L->listLen <= 0)
        return 0;
    else {
        for (j = i; j < L->listLen; j++) {
            L->data[j - 1] = L->data[j];
            k++;
        }
        L->listLen--;
        return k;
    }
    return 0;
}
int repeat(seqList* L ) {
    int j=0,i;
    for (i = 0; i < L->listLen-1; i++) {
        if (L->data[i] == L->data[i + 1])
        {
            j += listDelete(L, i + 1);
            i--;
        }
    }
    return j;
}
void listPrint(seqList *L)
{
    for(int i=0;i<L->listLen;i++)
        printf("%d ",L->data[i]);
}
int main() {
    int a[18] = {1,1,2,2,2,3,4,5,5,5,6,6,7,7,8,8,8,9};
    seqList *L = new seqList;
    initialList(L);
    for(int i=0;i<18;i++)
        listAdd(L,a[i]);
     repeat(L);
     listPrint(L);
     delete L;
     system("pause");
}