数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx

上传人:b****2 文档编号:13540187 上传时间:2022-10-11 格式:DOCX 页数:18 大小:157.88KB
下载 相关 举报
数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx_第1页
第1页 / 共18页
数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx_第2页
第2页 / 共18页
数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx_第3页
第3页 / 共18页
数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx_第4页
第4页 / 共18页
数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx

《数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx(18页珍藏版)》请在冰豆网上搜索。

数据结构与算法课程设计 学生成绩管理系统Word文件下载.docx

学号

学生姓名

专业班级

课程设计(论文)题目

课程设计(论文)任务

1.从十个题目中选择一个题目,,要求每个题目用标准的C语言程序实现,另外,完成思考题一题,思考题须写出相应的类C算法即可。

2.每个题目编写源程序时,要求有主菜单,每个子功能定义为相应的子函数,在主函数中调用各子函数,程序结构清晰。

3.根据题目,选择合适的逻辑结构和存储结构。

4.输入的数据由键盘输入。

5.分析算法的时间复杂度,要求算法的效率尽可能高。

6.验证排序算法的稳定性。

指导教师评语及成绩

成绩:

指导教师签字:

2012年月日

第1章课程设计目的与要求

1.1课程设计目的

本课程设计是计算机科学与技术专业、软件工程专业的专业技术实践课。

本实践课的主要目的是:

使学生学会利用在课堂中学过的理论知识,解决相应的实际问题,深入理解和灵活掌握所学的内容,培养学生理论和实践相结合的能力,培养学生分析问题解决问题的能力。

同时,在实验步骤规范化、程序设计方法等方面受到比较系统和规范的训练。

通过实践设计使学生进一步加深对程序设计的规范化及对复杂程序设计步骤的理解。

通过课程设计,加深对《数据结构》这一课程所学内容的进一步理解与巩固。

通过课程设计,加深对结构化设计思想的理解,能对系统功能进行分析,并设计合理的模块化结构。

通过课程设计,提高程序开发功能,能运用合理的控制流程编写清晰高效的程序。

通过课程设计,训练C程序调试能力,能将一个中小型各级组织系统联调通过。

通过课程设计,开发一个中小型系统,掌握系统研发全过程。

通话课程设计,培养分析问题、解决实际问题的能力。

1.2课程设计的实验环境

PC机,WindowsXP,C++。

1.3课程设计的预备知识

C语言程序设计、数据结构。

1.4课程设计要求

(1)认真查找资料,分析每个题目应选择的数据结构(逻辑结构和物理结构);

(2)按时到实验室调试程序,遵守实验室的规章制度,爱护设备;

(3)每个题目编写源程序时,每个子功能定义为相应的子函数,在主函数中调用各子函数,程序结构清晰,有必要的注释,可读性强。

(4)程序健壮性强,当数据输入错误时,要进行相应的处理;

(5)分析算法的时间复杂度,要求算法的效率尽可能高;

(6)对于排序算法,要验证排序算法的稳定性。

第2章课程设计内容

2.1题目的选择

6、学生成绩管理系统

2.2题目的具体实现

(1)题目应实现的具体功能;

录入学生成绩信息并保存;

可查询显示所有学生的个人信息;

可查询显示所有学生的所学课程信息;

按学号或姓名查询成绩信息;

能添加、删除和修改学生的成绩信息;

(2)题目所选择的数据结构及存储结构;

采用线性数据结构及链式存储结构

(3)完整的源程序

#include<

stdio.h>

stdlib.h>

string.h>

structstud

{

longnum;

charname[20];

doublescore1,score2;

};

typedefstructstucode

structstudstudent;

structstucode*next;

}L;

voidmenu();

voidcreatelist(structstucode**r);

voidout(structstucode*r);

voidsearch1(structstucode*r);

voidsearch2(structstucode*r);

voiddel(structstucode**r);

voidinsert(structstucode**r);

voidchange(structstucode**r);

voidmain()

charchoose;

intflag=1;

structstucode*r=NULL;

while(flag)

system("

cls"

);

menu();

choose=getchar();

switch(choose)

case'

1'

:

createlist(&

r);

out(r);

printf("

Testingfunction1\nPressanykeytocontinue\n"

getchar();

break;

2'

search1(r);

3'

search2(r);

4'

del(&

5'

insert(&

6'

7'

change(&

0'

flag=0;

Theend.\n"

default:

printf("

\nWrongSelection!

(选择错误,请重选!

)\n"

}

voidcreatelist(structstucode**r)

structstucode*p,*t;

longn;

chara[20];

doubles1,s2;

if(*r)*r=NULL;

\n请输入:

\n学号姓名分数1分数2(若要结束请输入四个为零)\n"

scanf("

%ld%s%lf%lf"

&

n,a,&

s1,&

s2);

if(n==0)return;

p=(L*)malloc(sizeof(L));

p->

student.num=n;

strcpy(p->

student.name,a);

student.score1=s1;

student.score2=s2;

next=NULL;

*r=p;

while(n)

t=p;

t->

next=p;

voidsearch1(structstucode*r)

longx;

structstucode*p=r;

if(!

r)

没有学生信息可查询!

\n"

return;

请输入要查询的学生信息的学生学号:

%ld"

x);

while(p&

&

student.num!

=x)

p=p->

next;

if(p==NULL)

Error!

Nosuchstudent!

else

%ld%s%.2lf%.2lf\n"

p->

student.num,p->

student.name,p->

student.score1,p->

student.score2);

voidsearch2(structstucode*r)

charm[20];

请输入要查询的学生信息的学生姓名:

%s"

m);

while(r&

strcmp(r->

student.name,m))

r=r->

if(r==NULL)

r->

student.num,r->

student.name,r->

student.score1,r->

voiddel(structstucode**r)

longk;

structstucode*p=*r,*t;

(*r))

没有学生信息可删除!

请输入要删除的学生信息的学生学号:

k);

if(p->

student.num==k)

*r=(*r)->

next,free(p);

while(p->

next&

next->

=k)

next==NULL)

t=p->

next=p->

free(t);

voidinsert(structstucode**r)

L*p,*t,*

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1