资源简介
这个学生成绩管理系统,由本人亲自编写,经过调试运行没有问题,总体设计(主要功能模块)
★ 学生信息载入模块
★ 学生信息创建模块
★ 学生信息查询模块
★ 学生信息修改模块
★ 学生信息统计模块
★ 学生信息显示模块
★ 学生信息保存模块
本程序采用链表的形式处理学生信息,所以用结构体储存学生的信息,每个函数模块都相互独立,源代码简单易懂,可以方便的删除、修改、添加模块,便于根据各种情况对程序升级,以完成任务。
感谢使用啊!
代码片段和文件信息
#include “iostream.h“
#include “string.h“
#include “malloc.h“
#include“stdlib.h“
#include “fstream.h“
#include“stdio.h“
#include“iomanip.h“
#include“conio.h“
#define NULL 0
#define LEN sizeof(struct STUDENT)
struct STUDENT
{
long number;
char name[20];
char sex[10];
int age;
int mathematicsRecord;
int englishRecord;
int chineseRecord;
int physicalRecord;
int cRecord;
int xuanxiuRecord;
double average;
struct STUDENT *next;
};
struct STUDENT * head=NULL;
void LoadData();
void SaveData();
void Add();
void Input();
void Show();
void FindName();
void FindNumber();
void FindClass();
void Modify();
void Del();
void Sort();
void FindStudentAverage();
void FindClassAverage();
void AboutMe();
void LoadData(){
char filename[20];
cout<<“请输入你要读取的文件名: “;
cin>>filename;
ifstream fin(filenameios::in);
if(!fin)
cout<<“文件打不开 !“< else {
struct STUDENT *p1*p2;
p1=p2=(struct STUDENT *)malloc(LEN);
fin>>p1->number>>p1->name>>p1->sex
>> p1->age >> p1->chineseRecord
>> p1->englishRecord >> p1->mathematicsRecord
>> p1->physicalRecord>>p1->cRecord
>> p1->xuanxiuRecord ;
int n=0;
while(1){
if(fin.eof())
break;
n++;
if(n==1)
head=p1;
else
p2->next=p1;
p2=p1;
p1=(struct STUDENT *)malloc(LEN);
fin>>p1->number>>p1->name>>p1->sex
>> p1->age >> p1->chineseRecord
>> p1->englishRecord >> p1->mathematicsRecord
>> p1->physicalRecord>>p1->cRecord
>> p1->xuanxiuRecord ;
}
p2->next=NULL;
cout<<“文件已读取成功!“< }
fin.close();
cout<<“显示如下。“< }
void SaveData() //保存函数
{
char filename[20];
cout<<“请输入文件名: “;
cin>>filename;
ofstream fout(filename);
if(!fout)
cout<<“文件不能打开!“< else
{
struct STUDENT *p;
p=head;
do{
fout << setw(0) << p->number << setw(8) << p->name << setw(8)<sex<age
<< setw(8) << p->chineseRecord << setw(8) << p->englishRecord << setw(8)
<< p->mathematicsRecord << setw(8) << p->physicalRecord <cRecord
<xuanxiuRecord< p=p->next;
}while(p != NULL);
}
cout<<“保存成功!“< cout<<“将返回上一级。“< fout.close();
getchar();
}
int n=0;
void Input(){
struct STUDENT *p1*p2;
char flag=‘y‘;
p1=p2=(struct STUDENT *)malloc(LEN);
cout << “请按照以下顺序,输入您要输入的学生信息:“<< endl;
cout << setw(0) << “学号“ << setw(8) << “姓名“ << setw(8)<<“性别“< << setw(8) << “语文“ << setw(8) << “英语“ << setw(8) << “数学“
<< setw(8) << “物理“ < cin >> p1->number >> p1->name >>p1->sex
>> p1->age >> p1->chineseRecord
>> p1->englishRecord >> p1->mathematicsRecord
>> p1->physicalRecord>>p1->cRecord
>> p1->xuanxiuRecord ;
while(flag==‘y‘){
n++;
if(n==1)
- 上一篇:哈工大软件工程硕士C辅导题
- 下一篇:数据结构迷宫算法源码+实验报告
相关资源
- 国际象棋的qt源代码
- C++中头文件与源文件的作用详解
- C++多线程网络编程Socket
- VC++ 多线程文件读写操作
- 利用C++哈希表的方法实现电话号码查
- 移木块游戏,可以自编自玩,vc6.0编写
- C++纯文字DOS超小RPG游戏
- VC++MFC小游戏实例教程(实例)+MFC类库
- 连铸温度场计算程序(C++)
- 6自由度机器人运动学正反解C++程序
- Em算法(使用C++编写)
- libstdc++-4.4.7-4.el6.i686.rpm
- VC++实现CMD命令执行与获得返回信息
- 白话C++(全)
- C++标准库第1、2
- 大数类c++大数类
- C++语言编写串口调试助手
- c++素数筛选法
- C++ mqtt 用法
- 商品库存管理系统 C++ MFC
- c++ 多功能计算器
- C++17 In Detail
- 嵌入式QtC++编程课件
- 颜色识别形状识别STM103嵌入式代码
- c++ 邮件多附件群发
- c++ 透明代理(hookproxy)
- mfc 调用redis
- FTP客户端源码(c++)
- c++ 画图(14Qt-XPS)
- c++多边形交并差运算
评论
共有 条评论