《C语言程序设计II》综合性实验讲解.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
综合性实验:小学生成绩管理系统 实验学时:4学时 涉及的知识点:分支语句、循环、分类统计、结构体、函数、文件操读写,记录的排序、增删改查等操作 一、实验目的 综合应用分支语句、循环、结构体、函数、文件操读写、排序等知识,实现一个小学生成绩管理系统的程序。 (1)掌握结构体的类型声明、变量定义与初始化; (2)掌握函数的声明、定义和调用,能够正确理解、使用指针作参数的函数; (3)理解模块化程序设计的要点:把一个较大的程序模块划分为若干小模块,小模块包含一个或多个函数,每个函数实现一个特定的功能,main函数起主控作用; (4)熟悉控制台环境下菜单设计的基本思路,并能通过菜单的选择调用相应函数模块; (5)掌握文本文件的打开、读取、写入、关闭等操作; (6)熟悉记录的排序、增删改查操作的基本思路。 二、实验内容 某小学要求在学生考试结束后,对考试成绩进行简单的处理和统计。功能包括:成绩的输入、删除、修改、查找、排序、统计、保存到文件等。学生的考试科目有:语文、数学和外语三科。学生基本信息包含:学号、姓名两项。学生总人数不超过1000人。一个学生的所有信息(包括基本信息、成绩等)为一条记录。 主要功能列举如下: (1)输入若干条学生成绩记录(包括学号、姓名、各科成绩)。 (2)显示所有记录。 (3)计算每个学生的总分。 (5)按姓名查找并显示相应的记录。 (6)按学号查找并删除相应的记录。 (7)输出各个科目的统计信息(最高分、平均分、及格率、优秀率等)。 (8)将数据保存到文本文件中。 (9)从文本文件中读取数据。 三、实验器材设备 安装了Windows XP(或其他版本的Windows操作系统)和VS 2010(或以上版本的Visusl Studio版本)的PC机一台。 四、实验要求 (1)主要的数据存储方式 该程序主要处理学生成绩。学生成绩数据比较多,而每个学生的信息都具有相同的结构,这种情况最适宜采用结构体数组进行存储。因为已经知道学生人数不超过1000人,所以只需要定义元素个数为1000的结构体数组即可。为了适当增加灵活性,可以将学生人数的最大值定义为一个常数。如果学生人数不能??测,则需要利用动态内存分配技术和链表等,复杂度会增加。 结构体定义:注意包含学生基本信息、三科成绩,另外还要一个总分字段。 #define MAX_STUDENT_COUNT 1000 typedef struct /*定义结构体数组*/ { int num; /*学号*/ char name[20]; /*姓名*/ double chi; /*语文*/ double math; /*数学*/ double eng; /*英语*/ double total; /*总分*/ }Student; Student Stud[MAX_STUDENT_COUNT]; /* 结构体数组变量 */ int Student_Count; /* 学生记录数 */ 由于整个程序功能主要就是围绕这个结构体数组进行,为了减少参数的传递,可以将变量定义为全局变量。 (2)主菜单设计 程序的功能比较多,为了方便用户操作,常用的方式是在进入程序后提供一个主菜单(列出程序提供的功能),让用户可以通过直观的方式选择要执行的功能。 主菜单的设计要注意,应该包含所有的系统功能,并且有快捷键执行相应的菜单。 根据本程序的功能,可以设计如图1所示的主菜单: 图1 系统主菜单示图 用户在执行完一个功能后,往往还要继续执行另一个功能。此时需要循环地显示主菜单,输入用户的选择,并执行相应的功能。一般使用如下的循环实现: while(choice!=q) { //显示主菜单 choice = getchar(); switch(choice) { case 1://执行功能1 break; case 2://执行功能2 break; ... case 0: } } 设计好菜单显示的内容之后,只需要直接显示出来即可。 (3)数据的显示 在程序的多处地方都需要显示数据,一些地方需要显示多条记录,而另外一些地方则需要显示单条记录。该程序对多条记录和单条记录均采用统一的输出格式,方便了程序的编写。 显示方法为首先显示统一的表头,然后依次显示每一条记录的内容。 (4)文本文件格式的设计 程序需要输出数据到文本文件中,并且要求还能够从文本文件中读取数据。如果设计不合理,会导致生成的数据文件无法正确读取出来等问题。 为了方便数据的写入和读取,这里采用文本文件格式。格式如下: 记录总数 学号 姓名 语文,数学,英语 ... 学号 姓名 语文,数学,英语 例如:

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档