




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
INCLUDEINCLUDE/INTDAYSINTY,INTM,INTD/计算天数INTDAYS0,IINTA1231,28,31,30,31,30,31,31,30,31,30,31IFY40IFM1RETURNDAYSELSEFORI0ISTUMAVEMIPRINTF“三门课程总平均成绩为51FN成绩最高的学生是N学号DN姓名SN三门课成绩51F,51F,51FN平均成绩62FN“,AVERAGE,STUMNUM,STUMNAME,STUMSCORE0,STUMSCORE1,STUMSCORE2,STUMAVE/DEFINEN13/定义人数STRUCTAINTNUM/原来的序号INTCOUNT/报数数目STRUCTANEXTINTMAININTI,J1STRUCTAP1,P2,BNP1BFORI0INEXTP1/P1的NEXT成员指向自己时表明只剩最后一个人P1COUNTJ/报数IFJ2P2P1/P2的作用是标记报数为2的人IFJ3J1P2NEXTP1NEXT/将报数为3的NEXT成员赋值给上一个报数为2的NEXT成员,使之指向下一个报数为1的/成员ELSEJ1P1P1NEXT/P1指向下一个COUNT不为3的成员PRINTF“最后留在圈子的人原来的序号为DN“,P1NUM/DEFINELSIZEOFSTRUCTSTUDENTSTRUCTSTUDENTLONGNUMFLOATSCORESTRUCTSTUDENTNEXTINTNSTRUCTSTUDENTCREATVOID/生成单向动态链表的函数STRUCTSTUDENTHEADSTRUCTSTUDENTP1,P2N0P1P2MALLOCLSCANF“LD,F“,HEADNULLWHILEP1NUM0N1IFN1HEADP1ELSEP2NEXTP1P2P1P1MALLOCLSCANF“LD,F“,P2NEXTNULLRETURNHEADVOIDPRINTSTRUCTSTUDENTHEAD/输出链表的函数STRUCTSTUDENTPHEADPRINTF“NNOW,THESERECORDSAREN“WHILEPNULLPRINTF“LD51FN“,PNUM,PSCOREPPNEXTSTRUCTSTUDENTDEL1STRUCTSTUDENTHEAD,LONGNUM/删除指定节点的函数,方法一,指定删除节点的数据STRUCTSTUDENTP1,P2P1HEADIFP1NUMNUMRETURNHEADP1NEXTELSEWHILEP1NUMNUMP2P1P1P1NEXTP2NEXTP1NEXTP1NEXTNULLRETURNHEADSTRUCTSTUDENTDEL2STRUCTSTUDENTHEAD,INTN/方法二,指定删除节点序号STRUCTSTUDENTP1,P2INTI1P1HEADIFINRETURNHEADP1NEXTELSEWHILEINEXTP2NEXTP1NEXTP1NEXTNULLRETURNHEADINTMAINSTRUCTSTUDENTHEADLONGNUM/INTNHEADCREATPRINTHEADPRINTF“N输入要删除学生的学号“/PRINTF“N输入要删除节点序号“SCANF“LD“,/SCANF“D“,HEADDEL1HEAD,NUM/HEADDEL2HEAD,NPRINTHEAD/DEFINELSIZEOFSTRUCTSTUDENTSTRUCTSTUDENTLONGNUMFLOATSCORESTRUCTSTUDENTNEXTINTNSTRUCTSTUDENTCREATVOID/生成单向动态链表的函数STRUCTSTUDENTHEADSTRUCTSTUDENTP1,P2N0P1P2MALLOCLSCANF“LD,F“,HEADNULLWHILEP1NUM0N1IFN1HEADP1ELSEP2NEXTP1P2P1P1MALLOCLSCANF“LD,F“,P2NEXTNULLRETURNHEADVOIDPRINTSTRUCTSTUDENTHEAD/输出链表的函数STRUCTSTUDENTPHEADPRINTF“NNOW,THESERECORDSAREN“WHILEPNULLPRINTF“LD51FN“,PNUM,PSCOREPPNEXTSTRUCTSTUDENTDEL1STRUCTSTUDENTHEAD,LONGNUM/删除指定节点的函数,NUM为指定删除节点的数据STRUCTSTUDENTP1,P2P1HEADIFP1NUMNUMRETURNHEADP1NEXTELSEWHILEP1NUMNUMP2P1P1P1NEXTP2NEXTP1NEXTP1NEXTNULLRETURNHEADSTRUCTSTUDENTINSERTSTRUCTSTUDENTHEAD,STRUCTSTUDENTP,INTN/插入节点的函数,N为新节点序号STRUCTSTUDENTP1,P2INTI1P1HEADIFINPNEXTP1HEADPELSEWHILEINEXTP2NEXTPPNEXTP1RETURNHEADINTMAINSTRUCTSTUDENTHEAD,PINTNLONGNUMHEADCREATPRINTHEADPRINTF“N输入要删除学生的学号“SCANF“D“,HEADDELHEAD,NUMPRINTHEADPMALLOCL/为插入的新节点开辟单元,否则P的值不确定PRINTF“N输入要添加学生的学号,成绩,序号“SCANF“LD,F,D“,HEADINSERTHEAD,P,NPRINTHEAD/DEFINELSIZEOFSTRUCTSTUDENTSTRUCTSTUDENTINTNUMFLOATSCORESTRUCTSTUDENTNEXTINTNSTRUCTSTUDENTCREATVOID/生成单向动态链表的函数STRUCTSTUDENTHEADSTRUCTSTUDENTP1,P2N0P1P2MALLOCLSCANF“DF“,HEADNULLWHILEP1NUM0N1IFN1HEADP1ELSEP2NEXTP1P2P1P1MALLOCLSCANF“DF“,P2NEXTNULLRETURNHEADVOIDPRINTSTRUCTSTUDENTHEAD/输出链表的函数STRUCTSTUDENTPHEADPRINTF“NNOW,THESERECORDSAREN“WHILEPNULLPRINTF“D51FN“,PNUM,PSCOREPPNEXTSTRUCTSTUDENTSORTSTRUCTSTUDENTHEAD/建立链表排序函数STRUCTSTUDENTP1,P2INTTFLOATSP1HEADP2P1NEXTWHILEP1SP1SCOREP1NUMP2NUMP1SCOREP2SCOREP2NUMTP2SCORESP2P2NEXTELSE/不能省略ELSE语句,否则遇到P1NUMNUM时无限循环P2P2NEXTP1P1NEXTP2P1NEXTRETURNHEADSTRUCTSTUDENTCATSTRUCTSTUDENTHEAD1,STRUCTSTUDENTHEAD2/建立链表合并函数STRUCTSTUDENTP,TPHEAD1WHILEPTP/循环结束时T将指向A链表的最后一个指针PPNEXTTNEXTHEAD2RETURNHEAD1INTMAINSTRUCTSTUDENTA,BPRINTF“输入链表AN“ACREATPRINTF“输入链表BN“BCREATPRINTSORTCATA,B/测试数据100188910016641001481100129400100176710015681001376100118500/DEFINELSIZEOFSTRUCTSTUDENTSTRUCTSTUDENTLONGNUMCHARNAME20STRUCTSTUDENTNEXTINTNSTRUCTSTUDENTCREATVOID/生成单向动态链表的函数STRUCTSTUDENTHEADSTRUCTSTUDENTP1,P2N0P1P2MALLOCLSCANF“LDS“,HEADNULLWHILEP1NUM0N1IFN1HEADP1ELSEP2NEXTP1P2P1P1MALLOCLSCANF“LDS“,P2NEXTNULLRETURNHEADVOIDPRINTSTRUCTSTUDENTHEAD/输出链表的函数STRUCTSTUDENTPHEADPRINTF“N现在链表A为N“WHILEPNULLPRINTF“LDSN“,PNUM,PNAMEPPNEXTSTRUCTSTUDENTDELSAMESTRUCTSTUDENTA,STRUCTSTUDENTB/从A中删去与B相同学号的节点STRUCTSTUDENTP1,P2,P3LONGNUMINTS,K0P3P1AP2BWHILEP1S0NUMP1NUMWHILEP2IFP2NUMNUMP2P2NEXTELSES1BREAKIFS1P3NEXTP1NEXT/若A最后一个相同,P3的指针数据为NULLELSEP3P1/每找到一个与B不相等的指针时,P3指向它K1/每找到一个与B不相等的指针时,K累加1IFK1/找到第一个与B不相等的指针时,将头指针赋值给AAP1P1P1NEXT/P1指向下一个指针P2B/P2重新指向链表B开头IFK0/K0表明A,B链表相同,返回NULLRETURNANULLELSERETURNAINTMAINSTRUCTSTUDENTA,BPRINTF“输入链表AN“ACREATPRINTF“输入链表BN“BCREATADELSAMEA,BPRINTA/DEFINELSIZEOFSTRUCTINFSTRUCTINFLONGNUMINTAGECHARNAME20CHARSEXSTRUCTINFNEXTINTNSTRUCTINFCREATVOID/生成单向动态链表的函数STRUCTINFHEADSTRUCTINFP1,P2N0P1P2MALLOCLSCANF“LDSCD“,HEADNULLWHILEP1NUM0N1IFN1HEADP1ELSEP2NEXTP1P2P1P1MALLOCLSCANF“LDSCD“,P2NEXTNULLRETURNHEADVOIDPRINTSTRUCTINFHEAD/输出链表的函数STRUCTINFPHEADPRINTF“NNOW,THESEINFAREN“WHILEPNULLPRINTF“LDSCDN“,PNUM,PNAME,PSEX,PAGEPPNEXTSTRUCTINFDELAGESTRUCTINFHEAD,INTA/删除指定年龄节点的函数STRUCTINFP1,P2P1HEADWHILEP1AGEAP1P1NEXTHEADP1P2P1WHILEP1NEXTNULLIFP1AGEAP2NEXTP1NEXTP1P1NEXTELSEP2P1P1P1NEXTIFP1AGEAP2NEXTNULLRETURNHEA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年上海租车合同范本
- 婚后贷款赠予合同范本
- 电脑回收采购合同范本
- 2025赠与合同范本下载
- 光纤布线施工合同范本
- 陵园合同范本
- 大型喷泉采购合同范本
- 房屋加固质保合同范本
- 卖家单方解约合同范本
- 餐厅房东 合同范本
- 黄遵宪年谱长编(上下册):国家社科基金后期资助项目
- 滇中引水工程
- 准东-华东±1100kv特高压直流输电线路工程杆塔设计原则
- krones旋盖系统控制原理及参数设定
- GB/T 708-2019冷轧钢板和钢带的尺寸、外形、重量及允许偏差
- GB/T 40549-2021焦炭堆积密度小容器测定方法
- GB/T 17395-2008无缝钢管尺寸、外形、重量及允许偏差
- GB 15630-1995消防安全标志设置要求
- 实习协议模板(最新版)
- 《新视野大学英语预备级1》教案
- 车间拆除及场地土壤治理与地下水修复工程项目技术方案工程方案和设备方案
评论
0/150
提交评论