ડꫀꫀ ꪗꪮꪊ. 2022-04-12 14:38 采纳率: 88.6%
浏览 25
已结题

请问这个程序错在哪 怎么运行不了



 
#include<stdio.h>
#include<string.h>
#include<math.h>
typedef int ElemType;
 
#define MaxSize 60
typedef struct {
    ElemType data[MaxSize];
    int length;
}Sqlist;
 
void Creatlist_Sq(Sqlist*&L,ElemType a[], int n)
{
    int i;
    L = (Sqlist*)malloc(sizeof(Sqlist));
    for (i = 0; i < n; i++)
        L->data[i] = a[i];
    L->length = n;
}
 
 
void Initlist_Sq(Sqlist*& L)
{
    L = (Sqlist*)malloc(sizeof(Sqlist));
    L->length = 0;
}
 
bool ListInsert_Sq(Sqlist * &L, int i, ELemType e)
{
    int j;
    if (i<1 || i>L->length + 1)
        return FALSE;
    i--;
    for (j = L->length; j > i; j--)
        L->data[j] = L->data[i];
    L->data[i - 1] = e;
    L->length++;
    return TRUE;
 
}
 
 
void ListTraverse_Sq(Sqlist*& L)
{
    int i;
    for (i = 0; i < L->length; i++)
        printf("%d", L->data[i]);
    printf("\n");
}
 
int ListLength_Sq(Sqlist*& L)
{
    return (L->length);
}
 
 
bool ListEmpty_Sq(Sqlist* L)
{
    return (L->length == 0);
}
 
void ListTravers_Sq(Sqlist*& L)
{
    int i=2;
    printf("%d", L->data[i]);
    printf("\n");
}
 
 
bool ListDelete_Sq(Sqlist*& L, int i, ElemType& e)
{
    int j;
    if ((i < 1) || (i->lengt))
        return FALSE;
    i--;
    e = L->data[i];
    for (j = ilj < L->length - 1; j++)
        L->data[j] = L->data[j + 1];
    L->length--;
    return TRUE;
}
 
 
void DestroyList_Sq(Sqlist*& L)
{
    free(L);
 }
 
 
//菜单
void menu()
{
    printf("********1.初始化                        2.插入*********\n");
    printf("********3.输出L                         4.输出长度*********\n");
    printf("********5.判断是否为空                  6.输出第三个***\n");
    printf("********7.输出元素a的逻辑位置           8.插入*********\n");
    printf("********9.清空                            *********\n");
}
 
 
 
 
int main()
{
    Sqlist L; int choice;
    InitList(L);
    while (1)
    {
        menu();
        printf("请输入菜单序号:\n");
        scanf("%d", &choice);
        if (10 == choice) break;
        switch (choice)
        {
        case 1:Initlist_Sq(L); break;
        case 2:ListInsert_Sq(Sqlist * &L, int i, ELemType e); break;
        case 3:ListTraverse_Sq(Sqlist * &L); break;
        case 4:Initlist_Sq(Sqlist * &L); break;
        case 5:ListEmpty_Sq(Sqlist * L); break;
        case 6: ListTravers_Sq(Sqlist * &L); break;
        /*case 7:PrintList(L); break;*/
        case 8:ListInsert_Sq(Sqlist * &L, int i, ELemType e); break;
        case 9:DestroyList_Sq(Sqlist * &L); break;
        default:printf("输入错误!!!\n");
        }
    }
    return 0;
}

  • 写回答

1条回答 默认 最新

  • 不会长胖的斜杠 后端领域新星创作者 2022-04-12 14:52
    关注
    // Line 60
    bool ListEmpty_Sq(Sqlist* L)
    {
        return (L->length =0);  //多了一个等于号
    }
    //line 76
    if ((i < 1) || (i->lengt))   // length写错了
            return FALSE;
        i--;
        e = L->data[i];
        for (j = ilj < L->length - 1; j++)  // 这里j的定义也写错了
            L->data[j] = L->data[j + 1];
        L->length--;
        return TRUE;
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 10月17日
  • 已采纳回答 10月9日
  • 创建了问题 4月12日

悬赏问题

  • ¥30 STM32 INMP441无法读取数据
  • ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
  • ¥15 用visualstudio2022创建vue项目后无法启动
  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥500 把面具戴到人脸上,请大家贡献智慧
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
  • ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急
  • ¥30 c#打开word开启修订并实时显示批注
  • ¥15 如何解决ldsc的这条报错/index error
  • ¥15 VS2022+WDK驱动开发环境