顺序表的建立 基本输入输出

来源:互联网 发布:淘宝ued团队 编辑:程序博客网 时间:2024/06/05 10:12
输入数据的个数n 输入n个数  然后输出 
input 
5
1 2 3 4 5
output
1 2 3 4 5
以下是代码:


#include<stdio.h>
#include<stdlib.h>
#define list_size 10000
#define listincreasement 10000
typedef int element;  // 自定义int类型element
typedef struct   //顺序表中的一个结点
{
    element *elem;
    int listsize;
    int length;
}Sqlist;
int initializer_list(Sqlist &L) ; //建表初始化
int creatnewlist(Sqlist &L, int n) ;   // 建立顺序表
void show(Sqlist &L) ;   //输出顺序表
int main()
{
    Sqlist L;
    int n;
    scanf("%d", &n);
    initializer_list(L);
    creatnewlist(L, n);
    show(L);
    return 0;
}
int initializer_list(Sqlist &L)  //建表初始化
{
    L.elem = (int *)malloc(sizeof(int));
    if(!L.elem) return -1;
    L.length = 0;
    L.listsize = list_size;
    return 0;
}
int creatnewlist(Sqlist &L, int n)  // 建立顺序表
{
    int i;
    L.elem = (int *)malloc(sizeof(int)*list_size);
    if(!L.elem) return -1;
    else
    {
        for(i = 0;i<n;i++)
        {
            scanf("%d", &L.elem[i]);
            L.length++;
        }
    }
    return 0;
}
void show(Sqlist &L)  //输出顺序表
{
    int i;
    for(i = 0;i<L.length;i++)
    {
        if(i==L.length-1) printf("%d\n", L.elem[i]);
        else printf("%d ", L.elem[i]);
    }
}

0 0