《2022年C语言课程设计报告-学生学籍管理系统.pdf》由会员分享,可在线阅读,更多相关《2022年C语言课程设计报告-学生学籍管理系统.pdf(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、信息学院课程设计报告课程名称 _C语言程序设计 _ _题目名称学生学籍管理系统学生学院 _ 信息学院 _ _ _专业班级 _ 计科 12 学号学生姓名指导教师 _ _ _精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 16 页 - - - - - - - - - - 2013 年 12 月 26 日目录一、 设计目的与要求 . 错误! 未定义书签。题目与设计要求 . 错误! 未定义书签。本程序设计的知识点 . 错误! 未定义书签。二、功能设计 . 错误! 未定义书签。总体设计 . 错误! 未定
2、义书签。详细设计 . 错误! 未定义书签。测试结果及分析 . 错误! 未定义书签。五、 总结 . 错误! 未定义书签。六、参考文献 . 错误! 未定义书签。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 16 页 - - - - - - - - - - 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 16 页 - - - - - - - - - - 一、 设计目的与要求题目与设计要求题目:学生
3、学籍管理系统目的:1、了解和熟悉 Visual C+ 软件编程开发环境2、熟练掌握结构化程序设计的步骤和模块化设计方法3、熟练掌握 C语言数据类型, 熟记字符型数据和整形数据的定义和使用4、熟练掌握用 while 语句、dowhile 语句和 for 语句实现循环结构程序设计的方法5、掌握一维数组、二维数组的定义、赋值和输入输出的方法6、掌握与数组有关的算法(特别是排序算法,熟练掌握冒泡排序法)7、熟悉函数的定义、声明方法及全局变量和局部变量的概念与用法,掌握函数的调用方法8、掌握结构体类型变量的定义和使用及结构体类型数组的概念和应用设计要求:学生学籍信息管理系统设计精品资料 - - - 欢迎
4、下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 4 页,共 16 页 - - - - - - - - - - 1、需求分析学生基本信息、学生成绩基本信息要存入文件当中,因而要提供文件的输入输出操作; 查询功能要求提供查找和显示操作; 删除功能要求实现删除操作; 排序功能要求实现排序操作;另外还应该提供键盘式选择菜单以实现功能选择。2、总体设计整个系统可以设计为数据录入模块、数据查询模块、数据删除模块和数据排序模块。3、详细设计设计学生基本信息和学生成绩基本信息结构体数组。Struct int stuNo; d,sisp.name,
5、&sisp.sex,&sisp.room,&sisp.tel);sp+;显示主菜单查询功能数据录入删除功能排序功能退出功能学籍信息管理系统根据 x 的输入学号课程编号课程数据删除输入学号精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 16 页 - - - - - - - - - - fclose (fp);fp = fopen(,r);while (!feof(fp)fscanf (fp,%d%s%s%d%d%d%d,&mimp.Id,mimp.courseNo,mimp.courseName
6、,&mimp.a,&mimp.b,&mimp.c, &mimp.d);if (mimp.c = -1) mimp.e = *mimp.b+*mimp.d;else mimp.e = *mimp.b+*mimp.c+*mimp.d;if ( mimp.e = 90. ) mimp.f = mimp.a;else if ( mi mp.e = 80. ) mimp.f = mimp.a *;else if ( mimp.e = 70. )mimp.f = mimp.a *;精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - -
7、 - -第 6 页,共 16 页 - - - - - - - - - - else if ( mimp.e = 60. ) mimp.f = mimp.a *;else mimp.f = 0;mp+;fclose(fp);* 显示主菜单 *这部分是对本程序的主要功能做出的展示,体现了本程序的五大功能,简洁明白,一目了然。Void DisplayMainMenu()printf (“n 1) 数据录入 n 2) 数据查询 n 3) 数据删除 n 4) 数据排序 n 5) 程序结束 n “);精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - -
8、 - - - - - - -第 7 页,共 16 页 - - - - - - - - - - * 数据录入模块*录入每个学生的学号、课程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩共 7 个数据,即对关于学生成绩基本信息的结构体数组进行输入,也就是文件中的内容。void DataInput()FILE *fp;int i;printf (学生的学号课程编号课程名称学分平时成绩实验成绩卷面成绩 n);while(1)scanf (%d%s%s%d%d%d%d,&mimp.Id,mimp.courseNo,mimp.courseName,&mimp.a,&mimp.b,&mimp.c, &m
9、imp.d);if(mimp.Id=-1)break;if (mimp.c = -1) 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 16 页 - - - - - - - - - - mimp.e = *mimp.b+*mimp.d;else mimp.e = *mimp.b+*mimp.c+*mimp.d;if ( mimp.e = 90. ) mimp.f = mimp.a;else if ( mi mp.e = 80. ) mimp.f = mimp.a *;else if ( mim
10、p.e = 70. )mimp.f = mimp.a *;else if ( mimp.e = 60. ) mimp.f = mimp.a *;else mimp.f = 0;mp+;fp = fopen(,r+);for(i=0;imp;i+)精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 9 页,共 16 页 - - - - - - - - - - fprintf(fp,%d%s%s%d%d%d%d,&mii.Id,mii.courseNo,mii.courseName,&mii.a,&mimp.b,
11、&mii.c, &mii.d);fclose(fp);* 查询模块*此段程序是为实现信息查询功能而设计的。总体来讲,分为两大功能模块,一是学生基本信息查询,二是对学生成绩的查询。在第一种查询,即对学生基本信息的查询中,又提供了两种查询方式,一种是按学号对学生基本信息进行查询, 一种是按宿舍号码对学生基本信息进行查询。 Void DataQuery()int x,y,z;printf( “ n 1) 学 生 基 本 情 况 查 询 n 2) 成 绩 查 询n ”);-选择查询内容scanf( “%d ”,&x);精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载
12、 名师归纳 - - - - - - - - - -第 10 页,共 16 页 - - - - - - - - - - if (x = 1) d != x) i+;if (isp-1) for ( k=i; ksp-1; k+)sik = sik+1; if ( isp) sp-;d = 0; for (k=0;kmp;k+)if ( mik.Id = x ) d+;else mik-d = mik;精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 11 页,共 16 页 - - - - - - - - -
13、- mp = mp - d;fp = fopen(D:,r+);for(i=0;i=1;i-)for (j=0;jmij+1.e) t=mij;mij = mij+1;mij+1 = t;markput();四、 测试分析测试结果及分析显示主菜单精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 13 页,共 16 页 - - - - - - - - - - 数据录入功能。对成绩进行录入精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - -
14、- - -第 14 页,共 16 页 - - - - - - - - - - (2)查询功能,按学号进行查询(3)排序功能按综合成绩排序(4)删除功能退出程序五、 总结精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 15 页,共 16 页 - - - - - - - - - - 这次学到很多很多的的东西, 同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来才能做好
15、每一件事。在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体、文件、指针等。为了解决问题,最好就是多向同学,老师请教。六、参考文献参考文献必须是在课程设计中真正阅读过和运用过的,文献按照在正文中的出现顺序排列。1 谭浩强, C语言程序设计(第四版)M ,清华大学出版社,2008 年2 谭浩强编著 C 程序设计题解与上机指导北京:清华大学出版社, 19923 潭浩田淑清编著 PASCAL语言程序设计第二版 北京:高等教育出版社, 1998精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 16 页,共 16 页 - - - - - - - - - -