新手~~ 2022-11-14 11:09 采纳率: 0%
浏览 11

求解答c++,数据结构的题

弄不明白这个代码哪里有错,求解答

img

#include//cout,cin
using namespace std;
#include "SqList.h"

char pause;

void dispmenu()
{//显示主菜单
cout<<endl;
cout<<" 顺 序 表 \n";
cout<<" 1-初始化顺序表\n";
cout<<" 2-创建顺序表\n";
cout<<" 3-获取第i个元素\n";
cout<<" 4-按值查找\n";
cout<<" 5-插入第i个元素\n";
cout<<" 6-删除第i个元素\n";
cout<<" 7-修改第i个元素\n";
cout<<" 8-清空表\n";
cout<<" 9-测表长\n";
cout<<" 10-测表空\n";
cout<<" 11-测表满\n";
cout<<" 12-显示表\n";
cout<<" 13-按值查找前驱\n";
cout<<" 0-退出\n";
}

//主函数
void main()
{
int i;
int e,pre_e;
SqList L; //建立容量为20、元素类型为整型的空顺序表
system("cls"); //执行系统命令cls,清屏

int choice;
do
{
    dispmenu();                                        //显示主菜单
    cout<<"Enter choice(1~12,0 退出):";
    cin>>choice;
    switch(choice)
    {
        case 1:                                        //初始化线性表 
            cout<<"请输入要创建的顺序表的长度:";
            cin>>i;
            cout<<endl;
            InitList(L,i);
            cout<<endl<<"创建成功!"<<endl;
            break;
         case 2:                                    //创建线性表 
            cout<<"请输入要创建的元素个数:";
            cin>>i;
            cout<<endl;
            CreateList(L,i);
            cout<<"创建的顺序表元素为:\n";       //显示表元素
            DispList(L);
            cout<<endl;
            break;
        case 3:                                        //获取第i个元素
            cout<<"请输入元素序号:";
            cin>>i;
            cout<<endl;
            if (GetElem_i(L,i, e))
                cout<<endl<<"第"<<i<<"个元素为:"<<e<<endl;
            else
                cout<<endl<<"元素不存在!"<<endl;
            break;    
         case 4:                                    //按值查找
             cout<<"请输入要查询的元素值:";
             cin>>e;
             i=LocateElem_e(L, e);
             if(i)
                 cout<<endl<<e<<"是第"<<i<<"个数据元素"<<endl;
             else
                 cout<<endl<<"不存在此元素!"<<endl;
             break;
         case 5:                                    // 在第i个位置插入元素
             cout<<"输入插入位置:"<<endl;
             cin>>i;
             cout<<"输入插入元素值:"<<endl;
             cin>>e;
             if(InsertElem_i(L,i,e)) 
             {
                 cout<<endl<<"插入成功!"<<endl;
                 DispList(L);
             }
             else
                 cout<<endl<<"插入不成功!"<<endl;;
             break;
         case 6:                                    //删除第i个元素
             cout<<"输入删除元素位置:"<<endl;
             cin>>i;
             if(DeleElem_i(L,i))
             {
                 cout<<endl<<"删除成功!"<<endl;
                 DispList(L);
             }
             else
                 cout<<endl<<"删除失败!"<<endl;
             break;
         case 7:                                    //修改第i个元素的值
             cout<<"输入修改元素位置:"<<endl;
             cin>>i;
             cout<<"输入新元素值:"<<endl;
             cin>>e;
             if(PutElem(L,i,  e))
             {
                 cout<<endl<<"修改成功!"<<endl;
                 DispList(L);
             }
             else
                 cout<<endl<<"修改失败!"<<endl;
             break;  
         case 8:                                    // 清空表
             ClearList(L);
             break;
         case 9:                                    // 测表长
             cout<<"表长为:"<<ListLength(L)<<endl;
             break;
         case 10:                                    //测表空
             if(ListEmpty(L))
                 cout<<endl<<"空表!"<<endl;
             else
                 cout<<endl<<"不是空表!"<<endl;
             break;
        case 11:                                    // 未表满
            if(ListFull(L))
                 cout<<endl<<"表满!"<<endl;
             else
                 cout<<endl<<"表不满!"<<endl;
             break;
        case 12:                                    //遍历显示表
            DispList(L);
            cout<<endl;
            cin.get(pause);
            system("pause");
            break;
        case 13:
            cout<<"测试顺序表为\n";
            DispList(L);
            cout<<"输入查找前驱的元素值:\n";
            cin>>e;
            if(PriorElem_e(L,e,pre_e))
                cout<<e<<"的前驱元素为:"<<pre_e<<endl;
            else
                cout<<e<<"无前驱元素!"<<endl;
            break;
          case 0:  //退出
            DestroyList(L);
            cout<<"结束运行bye-bye!"<<endl;
            break;
        default:                                    //无效选择
            cout<<"无效选择!\n";
            break;
        }
}while(choice!=0);

return;

}//end of main function

  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2022-11-14 11:25
    关注

    提示SqList 这个数据结构不认识啊

    评论

报告相同问题?

问题事件

  • 创建了问题 11月14日

悬赏问题

  • ¥15 关于#r语言#的问题:在进行倾向性评分匹配时,使用“match it"包提示”错误于eval(family$initialize): y值必需满足0 <= y <= 1“请问在进行PSM时
  • ¥45 求17位带符号原码乘法器verilog代码
  • ¥20 PySide6扩展QLable实现Word一样的图片裁剪框
  • ¥15 matlab数据降噪处理,提高数据的可信度,确保峰值信号的不损失?
  • ¥15 怎么看我在bios每次修改的日志
  • ¥15 python+mysql图书管理系统
  • ¥15 Questasim Error: (vcom-13)
  • ¥15 船舶旋回实验matlab
  • ¥30 SQL 数组,游标,递归覆盖原值
  • ¥15 为什么我的数据接收的那么慢呀有没有完整的 hal 库并 代码呀有的话能不能发我一份并且我用 printf 函数显示处理之后的数据,用 debug 就不能运行了呢