c语言课程设计链表 文件,[C语言课程设计链表操作.doc

[C语言课程设计链表操作

课 程 设 计

课程名称____C语言课程设计____

题目名称 链表操作

学生学院

专业班级

学 号

学生姓名

指导教师

2012 年 10 月 24 日

目录

课程设计简介

1.1 要求

1.2 意义和目的

1.3 内容

1.4 课程设计时间

具体实现

2.1 程序总体方案

2.1.1程序设计思想

2.1.2程序结构或流程图

2.2 改进方案

2.2.1改进一

2.2.1.1 改进方案

2.2.1.2 具体实现

2.2.1.3 实现效果

2.2.2改进二

2.2.2.1 改进方案

2.2.2.2 具体实现

2.2.2.3 实现效果

2.2.3 改进三

2.2.3.1 改进方案

2.2.3.2 具体实现

2.2.3.3 实现效果

总体小结

在整个设计过程中的心得体会

4、参考文献

1、课程设计简介

1.1 要求

参加本课程设计的学生,应当认真完成本课程设计的全部过程。并以最终课程设计成果来证明其独立完成各种实际任务的能力。从而,反映出理解和运用本课程知识的水平和能力。

1.2 意义和目的

意义:C语言是电子科学与技术专业的重要专业基础课。在很多后续课程中,都要使用到C语言。

学生通过对C语言的学习,已经具备了使用C语言编写简单的应用程序的能力。为了加强程序设计基础,开设课程设计课,使学生对C语言有更全面的理解,进一步提高运用C语言编程解决实际问题的能力,同时,为后续课程的学习夯实基础。

目的:

1)提高用程序设计解决实际问题的能力。

2)通过提出算法、指定输入输出来设计一个解决方案。

3)用C语言合理地开发两个简洁有效的程序代码来实现该设计。

4)测试程序是否工作且满足设计指标并评价其效率。

1.3 内容

链表操作题(包括建立、插入、删除、打印等)(参考教材);

1.4 课程设计时间

下达时间9月26日;完成时间10月12日。

2、具体实现

2.1 程序总体方案

2.1.1程序设计思想

通过在主函数循环调用各个函数,从而实现对链表的连续操作,最终实现链表的新建、打印、查找、保存、读取、更新、删除等等操作,进而管理学生信息,并保存学生的各种信息,方便下一次操作。链表是以学生学号排序,当出现学号相同时会有提示,并结束本次操作,成功实现一个学号对应一位学生。

2.1.2程序结构或流程图

主函数

1.新建 2.打印 3.查找 4.保存 5.读取 6.更新 7.增加 8.删除 9.删除全部

2.2 改进方案

2.2.1改进一

2.2.1.1 改进方案

刚开始链表是按插入顺序进行排列的,打印的时候也没有按序号打印,总体看起来很乱。所以,在新建、插入等需要增加新的学生信息的时候,调用按学号排序的函数,这样打印的时候就显得很工整,有条理。

2.2.1.2 具体实现

struct Student *sort(struct Student *pHead,struct Student *temp)

{

struct Student *p0,*p1,*p2;

p1=pHead;

p0=temp;

if(pHead==NULL)

{

pHead=p0;p0->pS=NULL;

}

else

{

while((p0->id>p1->id)&&(p1->pS!=NULL))

{

p2=p1;

p1=p1->pS;

}

if(p0->idid)

{

if(pHead==p1) pHead=p0;

else p2->pS=p0;

p0->pS=p1;

}

else if(p0->id==p1->id) //发现学号相同

{

printf("学号为“%d”的成绩信息已输入,请从新输入!\n",p0->id);

m_num=0;

}

else

{

p1->pS=p0;

p0->pS=NULL;

}

}

return pHead;

}

2.2.1.3 实现效果

2.2.2改进二

2.2.2.1 改进方案

一开始没有建立数据的时

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值