C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx

上传人:b****3 文档编号:17804230 上传时间:2022-12-10 格式:DOCX 页数:21 大小:430.05KB
下载 相关 举报
C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx_第1页
第1页 / 共21页
C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx_第2页
第2页 / 共21页
C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx_第3页
第3页 / 共21页
C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx_第4页
第4页 / 共21页
C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx

《C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx》由会员分享,可在线阅读,更多相关《C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx(21页珍藏版)》请在冰豆网上搜索。

C语言《数据结构》课程设计上机实习报告学生成绩管理系统Word格式.docx

1)设计在相应存储结构(邻接矩阵或邻接表)下的图的类型声明。

2)创建单链表,将文本文件中的学生成绩信息存储到单链表中。

3)查询操作,可通过序号或姓名查询学生信息。

4)显示操作,将所有成绩信息在屏幕上显示。

5)插入操作,在已经创建的单链表中进行插入操作,在第i条记录后插入1条新的记录,并显示所有信息。

6)删除操作,在单链表中进行删除图书操作,查找第i条记录,找到后删除该条记录,并显示所有信息。

7)保存数据文件功能。

三、数据结构说明

1.首先编写主菜单将子函数显示出来,然后利用switch函数一一对应选项调用子函数。

2.定义结构体stu和单链表结构体变量structNode,用fopen函数读取文本信息,定义一个头指针L和结构体变量s1。

四、详细设计

1.系统功能模块图

2.功能模块图

1)读取模块

图2读取模块图

2)查询模块

图3查询模块图

3)显示模块

图4显示模块图

4)插入模块

图5插入模块图

5)删除模块

图6删除模块图

6)保存模块

图7保存模块图

五、调试与测试

测试数据结果

1.主菜单

主菜单及其分支功能

2.读取学生信息

创建链表,读取学生信息

3.查询学生信息

出现查询子菜单,按序号查询和按姓名查询选项

1)按序号查询

按序号查询成功

2)按姓名查询

按姓名查询成功

4.显示学生信息

全部显示学生信息

5.插入学生信息

插入学生信息成功!

插入成功后的学生信息

6.删除学生信息

删除学生信息成功!

7.保存学生信息

保存学生信息成功!

8.学生信息保存

学生信息文本保存成功

六、课程设计总结

通过两周的上机实习,我对C语言又有了崭新的认识。

C语言的学习是一个系统的过程,需要长期的知识积累和储备并辅以大量的上级

实际操作练习,自己也应该有所体会,在实践中成长,在实践中求知。

从最开始的什么都不会,到最后的熟悉了c语言程序的运行,一路上学习了很多很多,非常满足。

七、附录

#include<

stdio.h>

stdlib.h>

string.h>

typedefstructstu

{

intbianhao;

charxuehao[100];

charname[100];

charsex[500];

charximing[100];

intenglish;

intmath;

intcomputer;

}stu;

typedefstructNode

studata;

structNode*next;

}LNode,*LinkList;

LinkListL;

stus1;

voidchaxun();

voidxuhao();

voidxingming();

LinkListread(LinkListL)

FILE*fp=fopen("

13.txt"

"

r"

);

//相对路径

if(fp==NULL)

{

printf("

找不到该文件?

出错!

\n"

exit(0);

}

charstr[81];

fgets(str,80,fp);

//读标题

puts(str);

//输出标题

LinkListp;

L=(LinkList)malloc(sizeof(LNode));

if(L==NULL)

内存空间分配失败!

L->

next=NULL;

while(!

feof(fp))//循环读取数据

fscanf(fp,"

%d%s%s%s%s%d%d%d"

&

s1.bianhao,s1.xuehao,s1.name,s1.sex,s1.ximing,&

s1.english,&

s1.math,&

puter);

%-5d%-11s%-8s%-6s%-9s%-8d%-8d%-5d\n"

s1.bianhao,s1.xuehao,s1.name,s1.sex,s1.ximing,s1.english,s1.math,puter);

p=(LinkList)malloc(sizeof(LNode));

if(p==NULL)

{

printf("

exit(0);

}

p->

data=s1;

next=L->

next;

L->

next=p;

returnL;

fclose(fp);

}

//显示全部信息

voiddisplay(LinkListL)

p=L->

while(p)

p->

data.bianhao,p->

data.xuehao,p->

data.name,p->

data.sex,p->

data.ximing,p->

data.english,p->

data.math,p->

p=p->

printf("

//查询

voidchaxun()

inti;

while

(1)

\t\t\t======查询=====\n"

\t\t\t1按序号查询\n"

\t\t\t2按姓名查询\n"

\t\t\t0退出\n"

\t\t\t=================\n"

请输入查询子菜单:

scanf("

%d"

i);

switch(i)

case1:

xuhao();

break;

case2:

xingming();

case0:

break;

default:

printf("

请输入查询子菜单\n"

return;

}break;

//按序号查询

voidxuhao()

请输入要查询的序号:

scanf("

while(p!

=NULL&

&

p->

data.bianhao!

=i)

if(p==NULL)

输入错误!

return;

//按姓名查询

voidxingming()

请输入要查询的姓名:

%s"

name);

strcmp(p->

data.name,name)!

=0)

//插入

LinkListinsert(LinkListL)

LinkListp,q;

请输入所要插入位置的序号\n"

while(i<

请重新输入正确的序号:

"

q=(LinkList)malloc(sizeof(LNode));

if(q==NULL)

内存空间分配失败!

q->

请输入学生信息:

data.bianhao=i;

%s%s%s%s%d%d%d"

q->

data.xuehao,q->

data.name,q->

data.sex,q->

data.ximing,&

q->

data.english,&

data.math,&

if(p->

data.bianhao<

i)

q->

next=q;

else

while(p->

p->

data.bianhao=p->

data.bianhao+1;

p=p->

next=p->

插入成功!

}

//删除

LinkListdel(LinkListL)

inti,a;

LinkListp,q,g;

请输入所要删除学生信息的序号\n"

while(p->

i||i<

1)

输入错误,请重新输入:

if(i==1)

=1)

data.bianhao-1;

是否删除此条信息?

\n确认请按1\n否按2\n"

data.xuehao,

a);

if(a==1)

q=L->

while(q->

{

q=q->

}

q->

删除成功!

else

已取消!

if(p->

data.bianhao==i)

p->

scanf("

if(a==1)

p=p->

L->

printf("

else

g=L->

while(p->

=i+1)

q->

data.bianhao=q->

while(g->

=i-1)

g=g->

next=g;

//保存

voidsave(LinkListL)

14.txt"

w"

保存文件失败!

fprintf(fp,"

编号学号姓名性别系名英语数学计算机\n"

fprintf(fp,"

保存成功!

//主函数

voidmain()

\t\t*******学生成绩管理系统*******\n"

\t\t|1.读取学生信息|\n"

\t\t|2.查询学生信息|\n"

\t\t|3.显示学生信息|\n"

\t\t|4.插入学生信息|\n"

\t\t|5.删除学生信息|\n"

\t\t|6.保存新的学生信息|\n"

\t\t|0.退出|\n"

\t\t******************************\n"

请选择功能序号:

L=read(L);

chaxun();

case3:

display(L);

case4:

L=insert(L);

case5:

L=del(L);

case6:

save(L);

exit

(1);

default:

请重新选择\n"

长江大学工程技术学院课程设计报告评阅意见

报告成绩:

指导教师签名:

年月日

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

当前位置:首页 > 高等教育 > 理学

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

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