Ray-Yan 2016-02-14 10:08 采纳率: 100%
浏览 2197
已采纳

数据结构顺序表C语言实现

如下代码所示:

 #include <stdio.h>
#include <malloc.h>
#define MAXSIZE 100

typedef int Position;
typedef struct LNode *List;
struct LNode{
    int Data[MAXSIZE];
    Position last;
};

List initList(){
    List L;
    L = (List)malloc(sizeof(struct LNode));
    L->last = -1;
    printf("初始化成功\n");
    return 1;
}

List createList(List L){
    int n,i=1;
    printf("请输入创建表的元素个数:");
    scanf("%d",&n);
    for(i=1;i<=n;i++){
        printf("\n请输入第%d个元素:",i);
        scanf("%d",&L->Data[i]);
    }
    for(i=1;i<=n;i++){
        printf("创建的表为:\n");
        printf("%d",L->Data[i]);
    }
}

void main(){
    List L;
    initList(L);
    createList(L);
}

在VC++ 6.0每次运行,一输入数据,就提示关闭程序。
小白刚刚弄数据结构,请大家帮忙看看哪里有问题,谢谢!

  • 写回答

3条回答 默认 最新

  • lambda-fk 2016-02-14 10:20
    关注
    List initList(){
        List L;
        L = (List)malloc(sizeof(struct LNode));
        L->last = -1;
        printf("初始化成功\n");
        return 1;
    }
    

    这个定义错了
    你的返回值是1 ,1 怎么是List类型呢
    另外如果你使用这个返回值List作为初始化的顺序表,那么在main函数中使用的时候,使用方法错了哦

    void main(){
        List L;
       ** initList(L);
    **    createList(L);****
    }
    

    改成这个
    List L = initList()

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)