C语言课程设计报告-学生学籍管理系统_第1页
C语言课程设计报告-学生学籍管理系统_第2页
C语言课程设计报告-学生学籍管理系统_第3页
C语言课程设计报告-学生学籍管理系统_第4页
C语言课程设计报告-学生学籍管理系统_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、信息学院课程设计报告课程名称 _c语言程序设计 _ _题目名称学生学籍管理系统学生学院 _ 信息学院 _ _ _专业班级 _ 计科 12 学号学生姓名指导教师 _ _ _ 2013 年 12 月 26 日目录一、 设计目的与要求 . 错误! 未定义书签。题目与设计要求 . 错误! 未定义书签。本程序设计的知识点 . 错误! 未定义书签。二、功能设计 . 错误! 未定义书签。总体设计 . 错误! 未定义书签。详细设计 . 错误! 未定义书签。测试结果及分析 . 错误! 未定义书签。五、 总结 . 错误! 未定义书签。六、参考文献 . 错误! 未定义书签。一、 设计目的与要求题目与设计要求题目:学

2、生学籍管理系统目的:1、了解和熟悉 visual c+ 软件编程开发环境2、熟练掌握结构化程序设计的步骤和模块化设计方法3、熟练掌握 c语言数据类型, 熟记字符型数据和整形数据的定义和使用4、熟练掌握用 while 语句、dowhile 语句和 for 语句实现循环结构程序设计的方法5、掌握一维数组、二维数组的定义、赋值和输入输出的方法6、掌握与数组有关的算法(特别是排序算法,熟练掌握冒泡排序法)7、熟悉函数的定义、声明方法及全局变量和局部变量的概念与用法,掌握函数的调用方法8、掌握结构体类型变量的定义和使用及结构体类型数组的概念和应用设计要求:学生学籍信息管理系统设计1、需求分析学生基本信息

3、、学生成绩基本信息要存入文件当中,因而要提供文件的输入输出操作; 查询功能要求提供查找和显示操作; 删除功能要求实现删除操作; 排序功能要求实现排序操作;另外还应该提供键盘式选择菜单以实现功能选择。2、总体设计整个系统可以设计为数据录入模块、数据查询模块、数据删除模块和数据排序模块。3、详细设计设计学生基本信息和学生成绩基本信息结构体数组。struct int stuno; d,,&sisp.sex,&sisp.room,&sisp.tel);sp+;显示主菜单查询功能数据录入删除功能排序功能退出功能学籍信息管理系统根据 x 的输入学号课程编号课程数据

4、删除输入学号fclose (fp);fp = fopen(,r);while (!feof(fp)fscanf (fp,%d%s%s%d%d%d%d,&mimp.id,mimp.courseno,mimp.coursename,&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.

5、e = 80. ) mimp.f = mimp.a *;else if ( mimp.e = 70. )mimp.f = mimp.a *;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 “);* 数据录入模块*录入每个学生的学号、课

6、程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩共 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, &mimp.d);if(mimp.id=-1)break;if (mimp.c = -1) mim

7、p.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 *;else if ( mimp.e = 60. ) mimp.f = mimp.a *;else mimp.f = 0;mp+;fp = fopen(,r+);for(i=0;imp;i+)fprintf(fp,%d%s%s%d%d%d%

8、d,&mii.id,mii.courseno,mii.coursename,&mii.a,&mimp.b,&mii.c, &mii.d);fclose(fp);* 查询模块*此段程序是为实现信息查询功能而设计的。总体来讲,分为两大功能模块,一是学生基本信息查询,二是对学生成绩的查询。在第一种查询,即对学生基本信息的查询中,又提供了两种查询方式,一种是按学号对学生基本信息进行查询, 一种是按宿舍号码对学生基本信息进行查询。 void dataquery()int x,y,z;printf( “ n 1) 学 生 基 本 情 况 查 询 n 2) 成 绩 查

9、 询n ”);-选择查询内容scanf( “%d ”,&x);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;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();四、 测试分析测试结果及分析显示主菜单数据录入功能。对成绩进行录入(2)查询功能,按学号进行查询(3)排序功能按综合成绩排序(4)删除功能退出程序五、 总结这次学到很多很多的的东西, 同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来才能做好每一件事。在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体、文件、指针等。为了解决问题,最好就是多向同学,老师请教。六、参考文献

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论