GuaiChaiAC 2021-12-03 09:48 采纳率: 25%
浏览 98

6-4 两个有序链表序列的合并PTA

问题遇到的现象和发生背景

#####裁判代码:

#include <stdio.h>
#include <stdlib.h>

typedef int ElementType;
typedef struct Node *PtrToNode;
struct Node {
    ElementType Data;

| 表头 | 表头 |
| ------ | ------ |
| 单元格 | 单元格 |
| 单元格 | 单元格 |


    PtrToNode   Next;
};
typedef PtrToNode List;

List Read(); /* 细节在此不表 */
void Print( List L ); /* 细节在此不表;空链表将输出NULL */

List Merge( List L1, List L2 );

int main()
{
    List L1, L2, L;
    L1 = Read();
    L2 = Read();
    L = Merge(L1, L2);
    Print(L);
    Print(L1);
    Print(L2);
    return 0;
}

/* 你的代码将被嵌在这里 */

问题相关代码,请勿粘贴截图
List Merge( List L1, List L2 ){
    List p = (List) malloc(sizeof (List));
    List p1 = (List) malloc(sizeof (List));
    while(1) {
        if (L1 == NULL || L2 == NULL){
            for(;L2;L2=L2->Next)
            {
                p1->Data=L2->Data;
                p1=p1->Next;
            }
            break;
        }

        while (L1->Data) {
            p->Data = L1->Data;
            while (L2->Data) {
                if (p->Data <= L2->Data) {
                    p1->Data = p->Data;
                    L2 = L2->Next;
                }
                else break;
            }
            L1 = L1->Next;
            p = p->Next;
            p1 = p1->Next;
        }
    }
    return p1;
}

运行结果及报错内容

a.c: In function ‘Read’:
a.c:17:2: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d", &N);
^~~~~~~~~~~~~~~
a.c:22:3: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d", &Rear->Next->Data);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

我的解答思路和尝试过的方法

使用指针p,存放L1的内容.用p判断是否小于L2;如果小于则存放在指针p1.函数返回p1;

我想要达到的结果
  • 写回答

2条回答 默认 最新

  • 五一编程 2021-12-03 10:14
    关注
    
    if(scanf("%d", &N)){
    }
    
    if(scanf("%d", &Rear->Next->Data)){
    }
    
    评论

报告相同问题?

问题事件

  • 创建了问题 12月3日

悬赏问题

  • ¥15 问题遇到的现象和发生背景 360导航页面千次ip是20元,但是我们是刷量的 超过100ip就不算量了,假量超过100就不算了 这是什么逻辑呢 有没有人能懂的 1000元红包感谢费
  • ¥30 计算机硬件实验报告寻代
  • ¥15 51单片机写代码,要求是图片上的要求,请大家积极参与,设计一个时钟,时间从12:00开始计时,液晶屏第一行显示time,第二行显示时间
  • ¥15 用C语言判断命题逻辑关系
  • ¥15 原子操作+O3编译,程序挂住
  • ¥15 使用STM32F103C6微控制器设计两个从0到F计数的一位数计数器(数字),同时,有一个控制按钮,可以选择哪个计数器工作:需要两个七段显示器和一个按钮。
  • ¥15 在yolo1到yolo11网络模型中,具体有哪些模型可以用作图像分类?
  • ¥15 AD9910输出波形向上偏移,波谷不为0V
  • ¥15 淘宝自动下单XPath自动点击插件无法点击特定<span>元素,如何解决?
  • ¥15 曙光1620-g30服务器安装硬盘后 看不到硬盘