欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C课程设计报告链表_计算机-.NET.pdf

    • 资源ID:94007805       资源大小:580.23KB        全文页数:14页
    • 资源格式: PDF        下载积分:5.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要5.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C课程设计报告链表_计算机-.NET.pdf

    .课程设计(论文)题 目 名 称 单链表的基本操作 课 程 名 称 C 语言程序课程设计 学 生 姓 名 依 学 号 1341302021 系、专 业 信息工程系、计算机科学与技术专业 指 导 教 师 成娅辉 2014 年 5 月 10 日 1 目 录 1 前言.2 2 需求分析.2 2.1 课程设计目的.2 2.2 课程设计任务.2 2.3 设计环境.2 2.4 开发语言.2 3 分析和设计.2 3.1 模块设计.3 3.2 系统流程图.3 3.3 主要模块的流程图.4 4 具体代码实现.5 5 课程设计总结.11 5.1 程序运行结果/预期运行结果.11 5.2 课程设计体会.12 参考文献.13 致.13 学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 2 1 前言 编写一个单链表程序来。输入一组正整数,以-1标志结束,往该链表中插入一个正整数,使其仍保持非递减有序,删除链表中第 i 个结点,在每次执行链表结束时都要输出执行该操作之后的链表,最后结束该链表。2 需求分析 2.1 课程设计目的 学生在教师指导下运用所学课程的知识来研究、解决一些具有一定综合性问题的专业课题。通过课程设计(论文),提高学生综合运用所学知识来解决实际问题、使用文献资料、及进行科学实验或技术设计的初步能力,为毕业设计(论文)打基础。2.2 课程设计任务(1)输入一组正整数,以-1标志结束,用函数实现;(2)将这些正整数作为链表结点的 data 域建立一个非递减有序的单链表,并输出该单链表;(3)往该链表中插入一个正整数,使其仍保持非递减有序,输出插入操作后的单链表;(4)删除链表中第 i 个结点,输出删除操作后的单链表,i从键盘输入。2.3 设计环境(1)WINDOWS 2000/2003/XP/7/Vista系统(2)Visual C+或TC集成开发环境 2.4 开发语言 C语言 3 分析和设计(1)首先我们要定义一个函数用来建立一个链表;要使这个链表中个数据能保持一个非递减有序。(2)建立一个函数输出这个链表中的所有数据。学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 3(3)然后我们要定义一个函数用来插入一个数链表任然要保持有序;首先我们要 通 过for(q=h,p=h-next;p!=NULL&s-datap-data;p=p-next,q=q-next);这语句来找打其位置。(4)最后一个函数用来删除第 i 个结点,关键要把指针指向第 i 个结点。然后删除它。3.1 模块设计 设定一个总函数包括几个子函数还实现题目的功能。程序中所用到的函数:(1)定义函数 create_list_sorted(),创建一个非递减有序的链表;(2)定义函数 output(),输出链表里的值;(3)定义函数 insert(),把一个数插入链表中,链表任然保持非递减有序。(4)定义函数 del(),输入 i,然后删除链表中的第 i 个结点。3.2 系统流程图 调用输出函数 output()调用插入函数 insert 调用删除函数 del()开始 结束 调用创建链表函数 create-list-sorted()学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 4 图 3.1 系统流程图 3.3 主要模块的流程图 NODE*create_list_sorted();定义结构体指针变量*h,*p,*q,*s;定义整型 x x!=-1 h=(NODE*)malloc(sizeof(NODE);s=(NODE*)malloc(sizeof(NODE)输入 x h-next=NULL s-data=x;s-next=NULL;q=h,p=h-next;p!=NULL&s-datap-dq-next=s;s-next=p是 是 否 否 学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 5 p=h-next 定义结构体指针变量*p p=p-next void output(NODE*h)p!=NULL 输出 p-data 输出回车 图 3.3 函数 output 的流程图 否 是 学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 6 q=h,p=h-next s-data=x;s-next=NULL 定义结构体指针变量*p,*q,*s s=(NODE*)malloc(sizeof(NODE)void insert(NODE*h,int x)p=p-next,q=q-next p!=NULL&s-datap-data 是 否 q-next=s,s-next=p 图 3.4 函数 insert 的流程图 学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 7 j=2 定义结构体指针变量*p,*q 和整型变量 j void del(NODE*h,int i)p=h,q=hp!=NULL&jnext q-next=p-next j+图 3.5 函数 del 的流程图 学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 8 4 具体代码实现/*单链表的基本操作*/#includestdio.h#includemath.h#includestring.h#includestdlib.h typedef struct node int data;struct node*next;NODE;/*链表结点类型定义*/*函数声明*/NODE*create_list_sorted();/*建立一个非递减有序的带头结点的单链表,返回其头指针*/void output(NODE*h);/*输出头指针 h 所指单链表*/void insert(NODE*h,int x);/*将元素 x 插入到单链表 h 中仍有序*/void del(NODE*h,int i);/*删除单链表 h 中第 i 个结点*/*主函数*/void main()NODE*head;int x,i,n;printf(*单链表的基本操作*n);/*输出菜单*/printf(1.建立 n);printf(2.输出 n);printf(3.插入 n);printf(4.删除 n);printf(0.退出 n);while(1)printf(请选择:);scanf(%d,&n);switch(n)case 1:head=create_list_sorted();break;case 2:output(head);break;学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 9 case 3:printf(please input inserted data:);scanf(%d,&x);insert(head,x);output(head);break;case 4:printf(please input deleted location:);scanf(%d,&i);del(head,i);output(head);break;case 0:exit(0);default:printf(输入错误,请重新选择!n);/*子函数*/NODE*create_list_sorted()/*建立一个非递减有序的带头结点的单链表,返回其头指针*/int x;NODE*h,*p,*q,*s;/*p 指向单链表中某一结点,q 指向*p 的前驱*/h=(NODE*)malloc(sizeof(NODE);h-next=NULL;scanf(%d,&x);while(x!=-1)s=(NODE*)malloc(sizeof(NODE);s-data=x;s-next=NULL;for(q=h,p=h-next;p!=NULL&s-datap-data;p=p-next,q=q-next);/*不 断比较,找到插入位置。注意:循环条件 p!=NULL 必须先判断,即放在&左边*/q-next=s;s-next=p;scanf(%d,&x);return h;void output(NODE*h)/*输出头指针 h 所指单链表*/NODE*p;for(p=h-next;p!=NULL;p=p-next)学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 10 printf(%d,p-data);printf(n);void insert(NODE*h,int x)/*将元素 x 插入到单链表 h 中仍有序*/NODE*p,*q,*s;s=(NODE*)malloc(sizeof(NODE);s-data=x;s-next=NULL;for(q=h,p=h-next;p!=NULL&s-datap-data;p=p-next,q=q-next);q-next=s;s-next=p;void del(NODE*h,int i)/*删除单链表 h 中第 i 个结点*/NODE*p,*q;int j;p=h;q=h;for(j=2;p!=NULL&jnext;q-next=p-next;学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 11 5 课程设计总结 5.1 程序运行结果 学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 12 5.2 课程设计体会 在课程设计中,我们遇到了大大小小很多个问题,在发现问题和解决问题的过程中我们学会很多。知道一个小小的错误会导致整个程序的功能就不同了。在程序设计中我们必须考虑程序的直观性和全面性,还有可读性;让程序更容易让人看懂。两周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握如何才能完成好一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互帮助,相互学习,相互监督。设计从不同的方面考验着我们,不仅仅考验我们的知识,更重要的是考验我们的动手能力。这件是要你说怎么做你会说,但是在真正的动手中你却有可能就不知道从何下手,所以在很多方面都要学习的。课程设计培养了我们的动手能力,但它也不只是针对这一个方面,它涉及很多方面,能够全方面锻炼一个人。学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的 13 参考文献 1黄同成,周红波程序设计基础教程(C 语言)M 人民,2011 2 黄同成,黄磊程序设计实践教程(C 语言)M 人民,2011 3 谭浩强 C 程序设计(第三版)M:清华大学,2005 致 在这次课程设计的过程中,我得到了许多人的帮助。首先我要感成老师在课程设计上给予我的指导、提供给我的支持和帮助,这是我能顺利完成这次报告的主要原因,更重要的是老师帮我解决了许多技术上的难题,让我能把系统做得更加完善。在此期间,我不仅学到了许多新的知识,而且也开阔了视野,提高了自己的设计能力,找到了自己的不足,然后能不断的改正自己,让自己越来越进步。还要感和我同一设计小组的几位同学,是你们在我平时设计中和我一起探讨问题,并指出我设计上的误区,教我要如何改正,使我能及时的发现问题,让我能顺利的完成程序,没有你们的帮助我不可能这样顺利地完成,所以在此表示感。学与技术专业指导教师成娅辉年月日目录前言需求分析课程设计目的课程设计任务设计环境开发语言分析和设计模块设计系统流程图主要模块的流程图具体代码实现课程设计总结程序运行结果预期运行结果课程设计体会参考文献致 表中第个结点在每次执行链表结束时都要输出执行该操作之后的链表最后结束该链表需求分析课程设计目的学生在教师指导下运用所学课程的知识来研究解决一些具有一定综合性问题的专业课题通过课程设计论文提高学生综合运用 务输入一组正整数以标志结束用函数实现将些正整数作为链表结点的域建立一个非递减有序的单链表并输出该单链表往该链表中插入一个正整数使其仍保持非递减有序输出插入操作后的单链表删除链表中第个结点输出删除操作后的

    注意事项

    本文(C课程设计报告链表_计算机-.NET.pdf)为本站会员(c****1)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开