m0_74860669 2022-11-01 09:45 采纳率: 50%
浏览 31
已结题

大家好 这个程序哪里错了

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

typedef struct Node NodePtr;
struct Node{ /
定义链表结点数据结构 */
int Val;
NodePtr Next;
};

int main()
{
int N, M;
int i;
NodePtr Head, Rear, Pre, Tmp;

Head = Rear = (NodePtr)malloc(sizeof(struct Node));/* 为程序处理方便,构造表头空结点 */
Head->Next = NULL;

scanf("%d %d", &N, &M);
for(i=0;i<N;i++) { /* 创建链表 */
    Pre = (NodePtr)malloc(sizeof(struct Node));    /* 申请新结点 */
    Pre->Next = NULL;
    scanf("%d", &Pre->Val);
    Pre->Next=i;/* 新结点插入链表尾部 */
    Rear = Pre;
}
/* 以下寻找M插入位置的前驱结点 */
Pre=Head; 
while( Pre->Next != NULL && Pre->Next->Val<M )
    Pre = Pre->Next;    
/* 以下插入M */
Tmp =(NodePtr)malloc(sizeof(struct Node));     /* 创建新结点 */
Tmp->Val=M
Tmp->Next =Pre->Next; /* 插入新结点 */
Pre->Next= Tmp;
if(Pre == Rear) /* 插入表尾时,需修改Rear */
    Rear = Tmp;
/* 以下输出插入后的链表结果 */
Tmp = Head->Next;
printf("%d", Tmp->Val);
for( Tmp=Tmp->Next; Tmp!= NULL; Tmp=Tmp->Next)    
    printf(" %d", Tmp->Val);
printf("\n");

return 0;#include <stdio.h>

#include <stdlib.h>

typedef struct Node NodePtr;
struct Node{ /
定义链表结点数据结构 */
int Val;
NodePtr Next;
};

int main()
{
int N, M;
int i;
NodePtr Head, Rear, Pre, Tmp;

Head = Rear = (NodePtr)malloc(sizeof(struct Node));/* 为程序处理方便,构造表头空结点 */
Head->Next = NULL;

scanf("%d %d", &N, &M);
for(i=0;i<N;i++) { /* 创建链表 */
    Pre = (NodePtr)malloc(sizeof(struct Node));    /* 申请新结点 */
    Pre->Next = NULL;
    scanf("%d", &Pre->Val);
    Pre->Next=i;/* 新结点插入链表尾部 */
    Rear = Pre;
}
/* 以下寻找M插入位置的前驱结点 */
Pre=Head; 
while( Pre->Next != NULL && Pre->Next->Val<M )
    Pre = Pre->Next;    
/* 以下插入M */
Tmp =(NodePtr)malloc(sizeof(struct Node));     /* 创建新结点 */
Tmp->Val=M
Tmp->Next =Pre->Next; /* 插入新结点 */
Pre->Next= Tmp;
if(Pre == Rear) /* 插入表尾时,需修改Rear */
    Rear = Tmp;
/* 以下输出插入后的链表结果 */
Tmp = Head->Next;
printf("%d", Tmp->Val);
for( Tmp=Tmp->Next; Tmp!= NULL; Tmp=Tmp->Next)    
    printf(" %d", Tmp->Val);
printf("\n");

return 0;
  • 写回答

2条回答 默认 最新

  • 莪是男神 2022-11-01 10:42
    关注

    你的代码定义结构体这一块是有问题的,连编译都无法通过。

    img

    如果你对链表不是很熟悉,想练习一下的话,可以参考一下我写的代码,然后你再对照着写就行:单链表的简单实现

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月10日
  • 已采纳回答 11月2日
  • 创建了问题 11月1日

悬赏问题

  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥15 关于超局变量获取查询的问题
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集
  • ¥15 在启动roslaunch时出现如下问题
  • ¥15 汇编语言实现加减法计算器的功能
  • ¥20 关于多单片机模块化的一些问题