资源简介
这个学生成绩管理系统,由本人亲自编写,经过调试运行没有问题,总体设计(主要功能模块)
★ 学生信息载入模块
★ 学生信息创建模块
★ 学生信息查询模块
★ 学生信息修改模块
★ 学生信息统计模块
★ 学生信息显示模块
★ 学生信息保存模块
本程序采用链表的形式处理学生信息,所以用结构体储存学生的信息,每个函数模块都相互独立,源代码简单易懂,可以方便的删除、修改、添加模块,便于根据各种情况对程序升级,以完成任务。
感谢使用啊!
代码片段和文件信息
#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辅导题
- 下一篇:数据结构迷宫算法源码+实验报告
相关资源
- VC++2010 VC上位机 20个教程 零基础 极速
- stm32f107vc_UCOSIII_3.03_CPP
- 分布式停车场 c++
- C++17标准英文
- C++Primer.Plus第6版中文版.pdf
- 词法分析C++程序
- c++员工管理系统
- VC++ outlookbar控件CXTOutBarCtrl
- c++ 连连看
- 数据结构与算法分析:C++语言描述(第
- OpenCV算法精讲:基于Python与c++
- python扩展需要安装的VC++环境python2.x
- C++写的telnet客户端,VS2010编译通过
- C++实现图的邻接矩阵存储和广度、深
- C/C++黑马13期全套
- Visual C++ 1.5 MSDN原版
- 深入理解C++11新特性解析与应用(高清
- C++ Primer习题集(第五版) 高清带完整
- VS2019编译完成的paho.mqtt.cpp库
- Windows平台c++对ftp/sftp文件和文件夹上
- VC++ 实现自动升级 漂亮的界面效果
- VS2017实现Tcp socket通信C++
- MFC opencv 显示图片
- 计算机图形学基础教程Visual C++版第二
- c++ 模板 第二版
- C#调用C++包括C++的opencv
- DEV C++ 6.0
- Arlang爱尔兰B公式c++实现
- C++STL标准程序库开发指南
- 深入应用C++ 11代码优化与工程级应用
评论
共有 条评论