《面向对象程序设计》课程实验报告 学生成绩管理系统 班级 计算机应用091 班 姓名 唐俊驰 学号 2009052023 日期 2010-12-26 一、 需求分析 1. 程序的功能:学生数据的录入、添加、修改与删除;成绩统计并排名;学生数据的读取与存储等基本功能。 2. 输入输出的要求:输入学生的成绩及处理要求;输出自己想得到的结果 3. 测试数据。 zhang 123 58 69 74 wang 456 78 96 58 yang 789 89 68 59 二、 详细设计 1. 程序框架设计: 设置了添加、修改、删除、查找、排序和对数据的读取、保存等功能。 2. 程序详细设计 添加:创建一个新的分类,用输入的变量初始化这个类,并用指针链接上一个对象。 修改:先通过链表找到要修改的对象,在输入要修改的值,利用类内函数对值进行修改。 删除:根据输入的条件找到要删除的对象,将此对象的 next 指针赋值给上一个对象的 next 值。 查找:按照学号或者姓名按链表查找对象,找到后输出该对象的基本信息。 排序:利用比较法,按照要求的标准进行排序。 数据的读取和保存:文件的打开和关闭,并按照存储的格式读取。 三、 调试分析 1. 调试中遇到的问题及对问题的解决方法 四、 使 用说 明 及测试结果 1. 系统配 置:Windows XP SP3;VC 6.0 2. 系统运 行效 果图 五、 源程序(带注释) 1.程序代码 /*stu.cpp*/ #include #include ".\ClassHead.h" using namespace std; void main() { char c; cla a; do { cout<<"\n score systerm:\n"; cout<<" 1… … add \n"; cout<<" 2… … delete \n"; cout<<" 3… … change \n"; cout<<" 4… … look for\n"; cout<<" 5… … paixu\n"; cout<<" 6… … save \n"; cout<<" 7… … read \n"; cout<<" 8… … back \n"; cout<<"choose(1-8):"; cin>>c; switch(c) { case '1': a.sadd(); break; case '2': a.sremove(); break; case '3': a.samend(); break; case '4': a.ssearch(); break; case '5': a.staxis(); break; case '6': a.ssave(); break; case '7': a.sload(); break; } }while(c!='8'); } /*类的定义及其成员函数的实现*/ #ifndef _CLASSHEAD_H #define _CLASSHEAD_H #include #include #include #define max 80; using ...