鱼C论坛

 找回密码
 立即注册
查看: 1530|回复: 3

大神们,帮我看看主函数和代码哪里错了?纯小白

[复制链接]
发表于 2022-10-22 18:07:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
#include<stdlib.h>
#define Maxsize 50
typedef int ElemType;
int length;
        int l,i,e;
        typedef struct
        {
                ElemType data[Maxsize];                  //存放线性表中的元素
                int length;                              //存放线性表的长度
        }SqList;                                     //顺序表类型
                               //建立顺序表      CreateList(&L,a[n],n)
        void CreateList(SqList*&L,ElemType a[],int n)//由a中的n个元素建立顺序表
        {
                int i=0,k=0;                             //k表示L中元素的个数,初始值为0
                L=(SqList*)malloc(sizeof(SqList));       //分配存放线性表的空间
                while(i<n)
                {
                        L->data[k]=a[i];                     //将元素a[i]存放在L中
                        k++;i++;
                }
                L->length=k;     //设置L的长度为k
                L->length=0;        
        }
                                  //初始化线性表   InitList(&L)
        void InitList(SqList*&L)
        {
                L=(SqList*)malloc(sizeof(SqList));//分配存放线性表的空间
                L->length=0;                       //置空表长度为0   
        }
                                  //销毁线性表     DestroyList(&L)
        void DestroyList(SqList*&L)
        {
                free(L);                           //释放L所指的顺序表空间
        }
                                  //判断线性表是否为空   ListEmpty(L)
        bool ListEmpty(SqList *L)
        {        return (L->length==0);}
                              //求线性表的长度       ListLength(L)
    int ListLength(SqList*L)
        {
                return (L->length);
        }
                                  //输出线性表          DispList(L)
        void DispList(SqList*L)
        {
                for(int i=0;i<L->length;i++)
                        printf("%d",L->data[i]);
                printf("\n");
        }
                                 //按序号求线性表的元素   GetElem(L,i,&e)
        bool GetElem(SqList*L,int i,ElemType &e)
        { 
                if(i<1||i>L->length)
                        return false;
                e=L->data[i-1];
                return true;
        }
                               //按元素值查找          LocateElem(L,e)
        int LocateElem(SqList*L,ElemType e)
        {
                int i=0;
                while(i<L->length&&L->data[i]!=e)
                        i++;
                if(i>L->length)
                        return 0;
                else
                        return(i+1);
        }
                          //插入数据元素          ListInsert(&L;i;e)
        bool ListInsert(SqList*&L,int i,ElemType e)
        {
                int j;
                if(i<1||i>L->length+1||L->length==Maxsize)
                        return false;
                i--;
                for(j=L->length;j>i;j--)
                        L->data[i]=e;
                    L->length++;
        }
                         //删除数据元素        ListDelete(&L;i;&e)
        bool ListDelete(SqList*&L,int i,ElemType &e)
        {
                int j;
                if(i<1||i>L->length)
                        return false;
                i--;
                        e=L->data[i];
                for(j=i;j<L->length-1;j++)
                        L->data[j]=L->data[j+1];
                L->length--;
                return true;
        }

        void main()
        
        { CreateList;
        InitList(&L);
        DestroyList(&L);
    ListEmpty(L);
        ListLength(L);
        DispList(L);
        GetElem(L,i,&e);
    LocateElem(L,e);
        ListInsert(&L,i,e);
        ListDelete(&L,i,&e);}
显示是下面主函数InitList(&L)error C2065: 'L' : undeclared identifier
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-10-22 18:08:28 | 显示全部楼层
大神们,带一带小白吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-22 18:30:03 From FishC Mobile | 显示全部楼层
        说指针 L 没定义,定义一下再看看呢。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-27 17:23:10 | 显示全部楼层
你的main函数里没有L这个变量的声名,拿它当参数调用函数肯定不行啊,
是不是第6行全局变量这里有问题     int l,i,e;   把这个 ‘l’  改成大写的试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-21 22:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表