m0_72322824 2023-03-22 15:50 采纳率: 70.6%
浏览 13
已结题

关于#链表#的问题:我的插入接口函数在其他地方测试也没有问题

void PrintList(Node* head) 
{
    Node* cur = head->next;
    printf_s("医院名称\t级别\t地址\t类型\t医生名字\n");
    while(cur)
    {
        printf_s("%s\t\t%s\t%s\t%s\t%s\n", cur->data.name, cur->data.level, cur->data.address, cur->data.type,cur->data.peo);
        cur = cur->next;
    }
    printf("\n");
}

void Insert(Node* head , Hospital data )
{
    Node* Newnode = CreatNode(data);
    Newnode->next = head->next;
    head->next = Newnode;
}

void Choice() {
    Node* List = CreatList();
    int c;
    Hospital data;
    Node* pmove = NULL;
    printf_s("请输入选项:\n");
    scanf_s("%d", &c);
    int y = getchar();
    switch (c)
    {
    case 0:
        printf_s("已退出\n");
        system("pause");
        exit(0);
        break;
    case 1:
        printf_s("*                     【   1.录入信息   】                     *\n");
        printf("请输入医院名字、级别、地址(区)、类型(综合/单科(具体单科))、名医\n");
        fflush(stdin);
        scanf_s("%s%s%s%s%s", data.name,20, data.level,20, data.address,20,data.type,20, data.peo,20);
        int b = getchar();
        Insert(List,data);

        break;
    case 2:
        break;
    case 3:
        break;
    case 4:
        break;
    case 5:  printf_s("*                     【   5.显示信息   】                     *\n");

        PrintList(List);
        break;
    }
}

int main() {
    while (1)
    {
        meau();
        Choice();
        system("pause");
        system("cls");
    }
    return 0; 

}

为什么在1插入后,在5打印失败了呢?我的插入接口函数在其他地方测试也没有问题

  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2023-03-22 15:53
    关注

    因为List只是Choice中的局部变量啊,选1和选5时,创建的是两个不同的List啊。
    简单修改的话,把Node *List 改为全局变量,在main中增加List = CreateList(); Choice函数中第一行删除

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 3月30日
  • 已采纳回答 3月22日
  • 修改了问题 3月22日
  • 创建了问题 3月22日

悬赏问题

  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化