SCAU:链表创建与插入结点(填空)

scau 数据结构实验一 8580合并链表 Description 线性链表的基本操作如下: #include<stdio.h> #include<malloc.h> #define ERROR 0 #define OK 1 #define ElemType int typedef int Status; typedef struct LNode { int data; struct LNode *next; }LNode,*LinkList; Status ListInsert_L(L.. 阅读详情

链表创建与插入结点(填空)

Time Limit:1000MS  Memory Limit:65535K

题型: 填空题   语言: G++;GCC;VC

描述

代码实现先创新一个链表,然后显示该链表,之后插入一个结点,再显示插入结点的链表。
请填空,完成该代码


#include "stdio.h" 
#include "malloc.h" 
#define LEN sizeof(struct student) 

struct student 
{ 
     long num; 
     int score; 
     struct student *next; 
}; 

struct student *create(int n) 
{  
     struct student *head=NULL,*p1=NULL,*p2=NULL; 
     int i; 
     for(i=1;i<=n;i++) 
     {  p1=(struct student *)malloc(LEN); 
        scanf("%ld",&p1->num);     
        scanf("%d",&p1->score);     
        p1->next=NULL; 
        if(i==1) head=p1; 
        else p2->next=p1; 
        p2=p1; 
      } 
      return(head); 
} 

void print(struct student *head) 
{ 
    struct student *p; 
    p=head; 
    while(p!=NULL) 
    { 
        printf("%ld\t%d",p->num,p->score); 
        p=p->next; 
        printf("\n"); 
    } 
} 

struct student *insert(struct student *head, struct student *stud) 
{   
    struct student *p0,*p1,*p2; 
    p1=head;  p0=stud; 
    if(head==NULL) 
      {_______________________;} 
    else 
    {
       while( (p0->num > p1->num) && (p1->next!=NULL) ) 
       {
         p2=p1;
         _______________________;
       } 
       if( p0->num <= p1->num ) 
       {
           if( head==p1 ) head=p0; 
           else p2->next=p0; 
           p0->next=p1; 
        } 
        else {  p1->next=p0;} 
    } 
    return(_______________________); 
} 

int main() 
{ 
    struct student *head,*stu; 
    int n; 
    scanf("%d",&n);    
    head=_______________________; 
    print(head); 
    stu=(struct student *)malloc(LEN); 
    scanf("%ld",&stu->num);         
    scanf("%d",&stu->score);     
    stu->next = NULL; 
    head=insert(head,stu); 
    print(head); 
    return 0;
} 

#include "stdio.h"
#include "malloc.h"
#define LEN sizeof(struct student)

struct student
{
     long num;
     int score;
     struct student *next;
};

struct student *create(int n)
{
     struct student *head = NULL, *p1 = NULL, *p2 = NULL;
     int i;
     for (i = 1; i <= n; i++)
     {
        p1 = (struct student *)malloc(LEN);
        scanf("%ld", &p1->num);
        scanf("%d", &p1->score);
        p1->next = NULL;
        if (i == 1)
            head = p1;
        else
            p2->next = p1;
        p2 = p1;
      }
      return head;
}

void print(struct student *head)
{
    struct student *p = head;
    while (p != NULL)
    {
        printf("%ld\t%d", p->num, p->score);
        p = p->next;
        printf("\n");
    }
}

struct student *insert(struct student *head, struct student *stud)
{
    struct student *p0 = stud, *p1 = head, *p2 = NULL;
    if (head == NULL)
    {
        head = p0;
    }
    else
    {
       while ((p0->num > p1->num) && (p1->next != NULL))
       {
         p2 = p1;
         p1 = p1->next;
       }
       if (p0->num <= p1->num)
       {
           if (head == p1)
           {
               head = p0;
           }
           else
           {
               p2->next = p0;
           }
           p0->next = p1;
        }
        else
        {
            p1->next = p0;
        }
    }
    return head;
}


int main()
{
    struct student *head, *stu;
    int n;
    scanf("%d", &n);
    head = create(n);
    print(head);
    stu = (struct student *)malloc(LEN);
    scanf("%ld", &stu->num);
    scanf("%d", &stu->score);
    stu->next = NULL;
    head = insert(head, stu);
    print(head);
    return 0;
}

 

SCAU--数据结构练习--8580--合并链表 题目描述 Description 线性链表的基本操作如下: #include<stdio.h> #include<malloc.h> #define ERROR 0 #define OK 1 #define ElemType int typedef int Status; typedef struct LNode { int data; struct LNode *next... 阅读详情

相关推荐

SCAU--数据结构练习--8579 --链式线性表的基本操作

题目描述 Description 编写算法,创建一个含有n个元素的带头结点的单链表L并实现插入、删除、遍历操作。本题目提供部分代码,请补全内容。 #include<stdio.h> #include<malloc.h> #define ERROR 0 #define OK 1 #define ElemType int typedef struct LNode { int d...

Leo_zehualuo的博客 1528

SCAU高级语言程序设计--实验11 链表操作(2)

SCAU高级语言程序设计--实验11 链表操作(2) 二、堂下练习 1、链表结点的插入 题目:完成插入链表结点的函数(按学号顺序),并调试通过、提交。 #include "stdio.h"  #include "malloc.h"  #define LEN sizeof(struct student)  struct student  {       long num;       int...

neilggg的博客 5350

Crossbar RRAM技术解析:从1TnR架构到存储革命

非易失性存储器(NVM)是数据存储的核心技术,其原理基于物理状态的稳定改变以实现数据持久化。阻变存储器(RRAM)作为一种新兴NVM,利用导电细丝在介质层中的形成与断裂实现数据存储,具有高速、低功耗和结构简单的优势。在工程实践中,RRAM面临潜行路径电流等挑战,而Crossbar提出的1TnR架构通过引入共享晶体管有效解决了这一问题,在保证性能的同时提升了集成密度。该技术与CMOS工艺兼容,支持后端集成与多层堆叠,为高密度存储和嵌入式应用提供了新的解决方案。结合当前行业对高能效、高密度存储的需求,RRAM在

weixin_42523104的博客 319

SCAU程序设计在线实训平台_实验_高级语言程序设计_实验11_链表操作_堂上练习

1098 [填空]链表结点的插入 Description 完成插入链表结点的函数(按学号顺序),并调试通过、提交。 #include "stdio.h" #include "malloc.h" #define LEN sizeof(struct student) struct student { long num; int score; struct student *next; }; struct student *create(int n) { stru

YelloooBlue's Blog 1913

模型性能评估之 Friedman 检验与 Nemenyi 后续检验

前言 当我们提出一种算法,需要知道我们的算法和现在已有的算法相比,性能是否更优的时候,就需要用到模型性能评估的方法。本篇博客介绍一种模型性能评估的方法:Friedman 检验与 Nemenyi 后续检验。 该方法的特点是:可以进行多个算法的比较。下面看看具体的使用: 具体使用 1. 计算序值 假定我们用 D1D_1D1​、D2D_2D2​ 、D3D_3D3​ 和 D4D_4D4​ 四个数据集对算法 AAA、BBB、CCC 进行比较。首先需要得到每个算法在每个数据集上的测试结果,可以是准确率,也可以是均方误差

蕾欧娜与26的博客 1万+

lvds接口_LVDS,接口,时序讲解,非常好的文章

欢迎FPGA工程师加入官方微信技术群点击蓝字关注我们FPGA之家-中国最好最大的FPGA纯工程师社群1.1.1 LVDS接口分类1.1.1.1 单路6bit LVDS这种接口电路中,采用单路方式传输,每个基色信号采用6位数据,共18位RGB数据,因此,也称18位或18bit LVDS接口。此,也称18位或18bit LVDS接口。1.1.1.2 双路6bit LVDS这种接口电...

weixin_39639286的博客 1902

SCAU:18064 链表的有序合并

时间限制:1000MS 代码长度限制:10KB提交次数:0 通过次数:0题型: 填空题 语言: G++;GCC;VC。

zero_019的博客 1754

西门子S7-200 SMART 实战解析:滑动平均值滤波算法在模拟量信号处理中的应用

本文详细解析了在西门子S7-200 SMART PLC中实现滑动平均值滤波算法的实战应用。通过处理模拟量信号如温度、压力等,该算法有效抑制信号干扰,提升系统稳定性。文章涵盖算法原理、程序框架、信号采集及调试优化,为工业自动化工程师提供实用指南。

gitlab7runner的博客 1152

SCAU 8580 合并链表

8580 合并链表 时间限制:1000MS 代码长度限制:10KB 提交次数:3724 通过次数:2077 题型: 编程题 语言: G++;GCC Description 线性链表的基本操作如下: #include<stdio.h> #include<malloc.h> #define ERROR 0 #define OK 1 #define ElemType int...

Maoxim的博客 1780

CODESYS数据处理合集(高低字节/ 字/浮点数/位)

VAR_INPUT//字节0//字节1END_VARVAREND_VAR。

RXXW_Dor的博客 354

SCAU数据结构——8579链式线性表的基本操作

题目 Description 编写算法,创建一个含有n个元素的带头结点的单链表L并实现插入、删除、遍历操作。本题目提供部分代码,请补全内容。 #include<stdio.h> #include<malloc.h> #define ERROR 0 #define OK 1 #define ElemType int typedef struct LNode { int data; struct LNode *next; }LNode,*LinkList; int Create

weixin_52334299的博客 2307

Autosar Dcm配置-App到Boot的跳转及1002回复配置及实现-基于ETAS软件

在软件刷写流程中,上位机(诊断仪)发送1002后,APP检查允许跳转boot后,在特定的ram(软复位不清除)写入指定置后通过触发软件复位来跳转到boot的。在APP跳转到Bootloader时,1002的回复有两种方式,一种是APP直接回复,然后跳转,另一种是APP回复NRC78,然后跳转,在Boot中回复。本文介绍这两种方式的实现。如果是在APP中回复,可以少发一个0x78,整体跳转时间可能会少一些。但是如果诊断在收到5002之后立马请求其他的服务,可能出现boot正在初始化而未正常接收到报文。

赞的博客 1556

scau 数据结构实验一 8579链式线性表的基本操作

Description 编写算法,创建一个含有n个元素的带头结点的单链表L并实现插入、删除、遍历操作。本题目提供部分代码,请补全内容。 #include<stdio.h> #include<malloc.h> #define ERROR 0 #define OK 1 #define ElemType int typedef struct LNode { int data; struct LNode *next; }LNode,*LinkList; int Creat.

qq_61974198的博客 342

ICML-2025《Learning from Sample Stability for Deep Clustering》

用于指导深度聚类模型的训练,从而提升模型对困难样本的学习能力,最终改善整体聚类性能。首先,利用K-means在原始样本(非增强)的表征上进行聚类,得到初始聚类分配。其目的是鼓励模型对同一稳定样本在连续epoch中产生相近的表征。输出差异大)会产生更大的损失值,从而引导模型优先优化这些困难样本。此损失借鉴了NT-Xent损失的思想,但将正样本对定义为。最后,通过对比学习优化聚类中心,将同一聚类在。为了获得更具代表性的聚类中心,论文提出。为了学习更鲁棒的表征,模型在在线网络。首先,论文定义了样本。

Christo的博客 829

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

SCAU 8579 链式线性表的基本操作

8579 链式线性表的基本操作 时间限制:1000MS 代码长度限制:10KB 提交次数:5567 通过次数:2176 题型: 编程题 语言: G++;GCC Description 编写算法,创建一个含有n个元素的带头结点的单链表L并实现插入、删除、遍历操作。本题目提供部分代码,请补全内容。 #include<stdio.h> #include<malloc.h> ...

Maoxim的博客 2035

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

SCAU 数据结构 1 单链表分解

描述 设计算法将一个带头结点的单链表A分解为两个具有头结点的链表B、C,其中B表的结点为A表中值大于等于零的结点, 而C表的结点为A表中值小于零的结点(链表A的元素类型为整型,要求B、C表利用A表的结点,即B,C表不能新建结点.只能新建一个头结点)。 线性链表的基本操作如下: #include #include #define ERROR 0 #define OK 1 #define ElemType int typedef int Status; typedef struct LNode { int .

m0_62122789的博客 2356

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SCAU8579、SCAU8580、SCAU8581 链式表的基本操作

这篇文章是一份纯代码分享。 代码包含了线性表的链式实现时的基本函数,包括: CreateLinkList、DestroyLinkList、ClearLinkList

TRXCX的博客 518

SCAU数据结构OJ题目第一章

SCAU数据结构OJ题目第一章题目

callmeggyh的博客 1543

SCAU 数据结构 8579 链式线性表的基本操作

链式顺序表

m0_62122789的博客 232

scau数据结构实验

scau 数据结构实验

weixin_73094970的博客 1万+

2022SCAU数据结构题库汇总

时间限制:1000MS 代码长度限制:10KB 提交次数:9027 通过次数:2456题型: 编程题 语言: G++;GCC 编写算法,创建初始化容量为LIST_INIT_SIZE的顺序表T,并实现插入、删除、遍历操作。本题目给出部分代码,请补全内容。....................................................................................

heimaoshei的博客 4419

SCAU 数据结构 8580 合并链表

合并链表

m0_62122789的博客 455

8580 合并链表

SCAU数据结构OJ习题第一章8580 合并链表

callmeggyh的博客 835
上一篇: SCAU:[填空]文本文件操作_字符读入
下一篇: SCAU:矩阵旋转
zero_019
博客等级 码龄3年 350粉丝 105原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zero_019

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值