c++学生成绩信息系统
这个需要用到文件,你可以看看文件那部分
#include #include #include using namespace std;typedef struct student {unsigned m_id;string m_name;unsigned m_age;string m_sex;string m_address;string m_contact;string m_dormitory;struct student *m_next;}student;class CStudent {private :student *head;public :CStudent() {head = new student;head->m_id = 0;head->m_name = "noname";head->m_next = NULL;}~CStudent() {student *p = head,*q;while(p) {q = p;p = q->m_next;delete q;}}student readdata(int model); // model = 1:不读取学号,2:不读取姓名,其他,读取所有信息void entering();bool insert(const student &astu);student *findid(unsigned id) const;student *findname(const string &name) const;student *findsex(const string &sex) const;student *finddormitory(const string &dormitory) const;unsigned boys() const;unsigned girls() const;unsigned headcount() const;bool eraseid();bool erasename();bool modifyid();bool modifyname();void Show() const;void query() const;void friend statistics(const CStudent &aclss);void friend erase(CStudent &aclss);void friend modify(CStudent &aclss);};string readstring() {string str;while(cin.get() != '
');cin >> str;return str;}student CStudent::readdata(int model) {student tmp;if(model != 1) { cout > tmp.m_id; }if(model != 2) { cout > tmp.m_age;cout > tmp.m_id;while(tmp.m_id) {if(findid(tmp.m_id) == NULL) {cout > tmp.m_age;cout > tmp.m_id;}}student *CStudent::findid(unsigned id) const {student *p;for(p = head; p->m_next; p = p->m_next)if(p->m_next->m_id == id) return p;return NULL;}student *CStudent::findname(const string &name) const {student *p;for(p = head; p->m_next; p = p->m_next)if(p->m_next->m_name == name) return p;return NULL;}student *CStudent::findsex(const string &sex) const {student *p;for(p = head; p->m_next; p = p->m_next)if(p->m_next->m_sex == sex) return p;return NULL;}student *CStudent::finddormitory(const string &dormitory) const {student *p;for(p = head; p->m_next; p = p->m_next)if(p->m_next->m_dormitory == dormitory) return p;return NULL;}bool CStudent::insert(const student &astu) {student *newnode,*p = head;if(p->m_next == NULL) {p->m_next = new student(astu);p->m_next->m_next = NULL;return true;}while(p->m_next) {if(p->m_next->m_id == astu.m_id) {cout m_next->m_id > astu.m_id) {newnode = new student(astu);newnode->m_next = p->m_next;p->m_next = newnode;return true;}p = p->m_next;}p->m_next = new student(astu);p->m_next->m_next = NULL;return true;}unsigned CStudent::boys() const {unsigned cnt = 0;student *p;for(p = head->m_next; p; p = p->m_next)if(p->m_sex == "男") ++cnt;return cnt;}unsigned CStudent::girls() const {unsigned cnt = 0;student *p;for(p = head->m_next; p; p = p->m_next)if(p->m_sex == "女") ++cnt;return cnt;}unsigned CStudent::headcount() const {unsigned cnt = 0;student *p;for(p = head->m_next; p; p = p->m_next,++cnt);return cnt;}bool CStudent::eraseid() {student *q,*p;unsigned id;cout > id;p = findid(id);if(p == NULL) {cout m_next;p->m_next = q->m_next;delete q;return true;}bool CStudent::erasename() {student *q,*p;string name;cout m_next;p->m_next = q->m_next;delete q;return true;}bool CStudent::modifyid() {student tmp,*p;unsigned id;cout > id;p = findid(id);if(p == NULL) {cout > choice;}while(choice 7);return choice;}void show(student *p) {cout m_id m_name m_age m_sex m_address m_contact m_dormitory m_next; p; p = p->m_next) show(p);cout > select;switch(select) {case 1 : cout > id;if(p = findid(id)) show(p->m_next);break;case 2 : cout m_next);break;case 0 : return;default : cout > select;switch(select) {case 1 : cout > id;if(p = a.findid(id)) {q = p->m_next;p->m_next = q->m_next;delete q;cout m_next;p->m_next = q->m_next;delete q;cout > select;switch(select) {case 1 : if(a.modifyid()) cout << "修改成功。
"; break;case 2 : if(a.modifyname()) cout << "修改成功。
"; break;case 0 : return;default : cout << "选择错误。
";}system("pause");}int main() {CStudent a;int an;do {an = menu();switch(an) {case 1 : a.entering(); break;case 2 : a.Show(); break;case 3 : a.query(); break;case 4 : a.entering(); break;case 5 : statistics(a); break;case 6 : erase(a); break;case 7 : modify(a); break;case 0 : break;default : cout << "选择错误。
"; break;}}while(an);return 0;}
#include<iostream.h>
#include<string.h>
#include<fstream.h>
class stu
{
char name[20];
double math,chinese,english,average,sum;
public:
stu()
{
}
stu(char n[20],double ma,double chin,double eng)
{
strcpy(name,n);
math=ma;
chinese=chin;
english=eng;
}
double getsum()
{
sum=chinese+english+math;
return sum;
}
double getaver()
{
average=getsum()/3;
return average;
}
friend void main();
};
void main()
{
cout<<"请选择您需要的操作!"<<endl;
cout<<"操作:"<<endl;
cout<<"(0)数据录入"<<endl;
cout<<"(1)增加人员"<<endl;
cout<<"(2)删除人员"<<endl;
cout<<"(3)修改数据"<<endl;
cout<<"查询:"<<endl;
cout<<"(4)按总成绩查询"<<endl;
cout<<"(5)按姓名查询"<<endl;
cout<<"(6)输出所有学生的数据"<<endl;
cout<<"成绩名词"<<endl;
cout<<"(7)按总分查询排名"<<endl;
cout<<"(8)按语文查询排名"<<endl;
cout<<"(9)按数学查询排名"<<endl;
cout<<"(y)按英语查询排名"<<endl;
cout<<"选择相关操作请输入相对的括号里的阿拉伯数字!"<<endl;
char p;char w;
stu *s[50];
ofstream *file[50];
int i=0;
int j=0;
bool flag2=0;
do
{
cin>>p;
if((p>='0'&&p<='10'))
flag2=1;
else
cout<<"指令错误!请重新输入:"<<endl;
}while(flag2==0);
do{
switch(p)
{
case '0':
{
char c;
char name[20];double math,chinese,english;
do{
cout<<"请输入姓名"<<endl;
cin>>name;
cout<<"请输入数学成绩:"<<endl;
cin>>math;
cout<<"请输入语文成绩:"<<endl;
cin>>chinese;
cout<<"请输入外语成绩:"<<endl;
cin>>english;
file[j]=new ofstream("d:\\document",ios::ate);
*file[j]<<"姓名"<<name<<"数学成绩"<<math<<"语文成绩"<<chinese<<"外语成绩"<<english<<endl;
j++;
s[i]=new stu(name, math, chinese, english);
i++;
cout<<"数据录入成功,想继续录入吗(y/n)"<<endl;
cin>>c;
flag2=0;
do
{
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
else
flag2=1;
}while(flag2==0);
}while(c=='y');
break;
}
case '4':
{
double t;char c;
do
{
int flag1=0;
cout<<"请输入你要查询学生的总成绩"<<endl;
cin>>t;
for(int q=0;q<i;q++)
{
if(s[q]->getsum()==t)
{
flag1=1;
cout<<"您要查询的学生是:"<<(*s[q]).name<<endl;
}
}
if(flag1==0)
cout<<"对不起!您要查询的学生不存在!"<<endl;
cout<<"您想继续查询吗?(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}
while(c=='y');
break;
}
case '5':
{
char n[20];int j=0;char c;
do{
int flag=0;
cout<<"请输入你要查询的学生姓名"<<endl;
cin>>n;
for(int j=0;j<i;j++)
{
if(strcmp(n,(*s[j]).name)==0)
{
flag=1;
cout<<"您要查询的学生是:"<<(*s[j]).name<<endl;
cout<<(*s[j]).name<<"的总成绩成绩是"<<(*s[j]).getsum()<<endl<<"平均成绩是:"<<(*s[j]).getaver()<<endl;
}
}
if(flag==0)
cout<<"对不起!您要查询的学生不存在!"<<endl;
cout<<"您想继续查询吗?(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}
while(c=='y');
break;
}
case '1':
{
char name[20];double math,chinese,english;
char c;
do
{
cout<<"请输入您要增加的学生的姓名:"<<endl;
cin>>name;
cout<<"请输入数学成绩:"<<endl;
cin>>math;
cout<<"请输入语文成绩:"<<endl;
cin>>chinese;
cout<<"请输入外语成绩:"<<endl;
cin>>english;
file[j]=new ofstream("d:\\document",ios::ate);
*file[j]<<"姓名"<<name<<"数学成绩"<<math<<"语文成绩"<<chinese<<"外语成绩"<<english<<endl;
j++;
s[i]=new stu(name, math, chinese, english);
i++;
cout<<"数据录入成功,想继续录入吗(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}while(c=='y');
break;
}
case '2':
{
char name[20];bool flag3=0;char c;
do{
cout<<"请输入您要删除的学生姓名:"<<endl;
cin>>name;
for(int h=0;h<i;h++)
{
if(strcmp(name,s[h]->name)==0)
{
flag3=1;
i--;
do{
s[h]=s[h+1];
h++;
}while(h<=i);
}
}
if(flag3==0)
cout<<"您要求删除的对象本来就不存在!请检查输入的正确性!";
cout<<"要继续删除吗?(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}while(c=='y');
break;
}
case '3':
{
char name[20];double mat,chin,eng;flag2=0;
char c;
do
{
cout<<"请输入您要修改的学生的姓名:"<<endl;
cin>>name;
for(int h=0;h<i;h++)
{
if(strcmp(name,s[h]->name)==0)
{
flag2=1;
cout<<"请输入新的数学成绩:"<<endl;
cin>>mat;
cout<<"请输入新的语文成绩:"<<endl;
cin>>chin;
cout<<"请输入新的外语成绩:"<<endl;
cin>>eng;
s[h]->chinese=chin;
s[h]->math=mat;
s[h]->english=eng;
cout<<"数据修改成功!";
}
}
if(flag2==0)
{
cout<<"您要修改的学生本来就不存在!请检查重新输入!"<<endl;
}
cout<<"想继续修改吗(y/n)"<<endl;
cin>>c;
if(c!='y'&&c!='n')
{
cout<<"指令错误!请重新输入!"<<endl;
cin>>c;
}
}while(c=='y');
break;
}
case '6':
{
cout<<"本系统所有学生数据如下:"<<endl;
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!"<<endl;
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name<<
"语文:"<<" "<<s[k]->chinese<<"数学:"<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english<<"总分:"<<" "<<(*s[k]).getsum()
<<"平均分:"<<" "<<(*s[k]).getaver()<<endl;
}
break;
}
case '7':
{
int t;stu b;
cout<<"本系统所以学生排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->getsum())<(s[y]->getsum()))
t=y;
if(t!=x)
{
b=*s[x];
*s[x]=*s[t];
*s[t]=b;
}
}
}
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name<<
"语文:"<<" "<<s[k]->chinese<<"数学:"<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english<<"总分:"<<" "<<s[k]->getsum()
<<"平均分:"<<" "<<s[k]->getaver()<<endl;
}
break;
}
case '8':
{
int t;stu b;
cout<<"本系统所以学生语文排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->chinese)<(s[y]->chinese))
t=y;
if(t!=x)
{
b=*s[t];
*s[t]=*s[x];
*s[x]=b;
}
}
}
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name<<
"语文:"<<" "<<s[k]->chinese<<"数学:"<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english<<"总分:"<<" "<<s[k]->getsum()
<<"平均分:"<<" "<<s[k]->getaver()<<endl;
}
break;
}
case '9':
{
int t;stu b;
cout<<"本系统所以学生数学排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->math)<(s[y]->math))
t=y;
if(t!=x)
{
b=*s[t];
*s[t]=*s[x];
*s[x]=b;
}
}
}
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name<<
"语文:"<<" "<<s[k]->chinese<<"数学:"<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english<<"总分:"<<" "<<s[k]->getsum()
<<"平均分:"<<" "<<s[k]->getaver()<<endl;
}
break;
}
case 'y':
{
int t;stu b;
cout<<"本系统所以学生英语排名如下:"<<endl;
for(int x=0;x<i-1;x++)
{
t=x;
for(int y=x+1;y<i;y++)
{
if((s[t]->english)<(s[y]->english))
t=y;
if(t!=x)
{
b=*s[t];
*s[t]=*s[x];
*s[x]=b;
}
}
}
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!";
for(int k=0;k<i;k++)
{
cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name<<
"语文:"<<" "<<s[k]->chinese<<"数学:"<<" "<<s[k]->math
<<"外语:"<<" "<<s[k]->english<<"总分:"<<" "<<s[k]->getsum()
<<"平均分:"<<" "<<s[k]->getaver()<<endl;
}
}
break;
}
cout<<"您想继续进行其他操作吗?(y/n)"<<endl;
bool flag4=0;
do
{
cin>>w;
if(w!='y'&&w!='n')
cout<<"指令错误!请重新输入!"<<endl;
else
flag4=1;
}while(flag4==0);
if(w=='y')
cout<<"请输入操作代码(0 录入/4 按总分查询/5 按姓名查询/1 增加人员/2 删除人员/3 修改数据/6 显示所有成员数据/7 按总分排名/8 按语文排名/9按数学排名/y按英语排名)"<<endl;
cin>>p;
}while(w=='y');
for(int x=0;x<i;x++)
{
delete s[x];
cout<<"delete all members!"<<endl;
}
}
如何进入教育管理信息系统查询学生成绩?
登录平台用手机浏览器网页登录:本系统的主要使用用户为学生、班主任、体育教师、学校管理员、地方教育局用户、教育厅用户。学生登录账户为学籍号,初始密码为学籍号后六位;一般情况下,学籍号为G+身份证号,如:王二,G210121200201014232,个别学生的学籍号是L+身份证号。班主任及学校管理人员账户及密码,...
在学籍管理系统中打印学生成绩单体现了信息系统的什么功能
体现了信息系统的输出功能。信息系统是指通过计算机技术和信息技术实现信息采集、存储、处理、管理和输出等各项功能的系统,在学籍管理系统中,它通过采集和存储学生成绩等信息,进行自动判定和计算、数据管理和查询等多个方面的功能,通过打印学生成绩单来实现输出功能。学籍管理系统还具备了很多其他的重要功能...
怎样在手机上查分数
在手机上查分数的几种方式:学校官方网站、学生信息系统、教务管理移动应用、短信或邮件通知。1、学校官方网站:许多学校的官方网站提供学生信息查询功能。首先,打开手机上的浏览器应用程序,进入学校官方网站。一般来说,该网站的首页会有一个学生登录入口,或者在学生相关页面上寻找登录按钮。点击登录后,输...
学生如何查询自己在学校的成绩?
1. 学校官方网站或学生信息系统:大多数学校都会提供一个在线平台,供学生查看自己的成绩、课程安排和其他相关信息。学生通常只需要登录自己的账户,即可访问这些信息。2. 教务系统或成绩管理系统:这些系统通常与学校官方网站相连,学生可以在这些系统中查看详细的成绩报告,包括每门课程的分数、平均分数、班级...
学校学分怎么查询
一、登录学生信息系统 学生可以通过学校提供的学生信息系统登录个人账户。通常需要输入学号和密码进行身份验证。二、选择学分查询功能 在学生信息系统主页或相关模块中,找到学分查询功能入口。这通常位于成绩查询、学业管理或个人信息等栏目下。三、填写相关信息 进入学分查询页面后,系统可能会要求填写一些相关的...
利用单链表实现简单的学生成绩信息管理系统,功能包括:成绩录入、成
if(a[i]<min) min=a[i]; } avg=(double)sum\/50; printf("平均成绩为%lf,最高成绩为%d,最低成绩为%d\\n",avg,max,min); return 0; } int compositor(int a[50]) { int i,j,n,temp=0; printf("
学生自行设计的信息系统有哪些
学生自行设计的信息系统有学生,老师,课程,成绩。根据查询相关信息显示,学生自行设计的信息系统有学生,老师,课程,成绩。学生信息管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
登分系统是什么
登分系统是一种用于记录、管理和查询成绩或分数的信息系统。详细解释如下:登分系统主要用于各类学校、培训机构或考试中心,其主要功能是记录和存储学生的成绩信息。该系统能够方便地录入、修改、删除和查询学生的分数,使管理者能够快速准确地掌握学生的成绩情况。一、基本功能 登分系统通常包括以下几个基本...
学生信息管理系统 学生信息包括:学号,姓名,课程成绩(5门),总分,平均成...
int score1;\/\/五门成绩 int score2;int score3;int score4;int score5;float zf;\/\/总分 float pjf;\/\/平均分 };student st[10000],*pst;int sm=0;void main(){ int x;pst=st;do { printf("\\t\\t\\t\\t 学生信息管理系统 \\t\\t\\t\\t\\n");printf("\\t***\\n");printf ("\\...
浩恒教育如何查看学生成绩
1、访问浩恒教育的官方网站或学生信息系统。学校会提供一个在线平台或系统,供学生和家长查看学生成绩和其他相关信息。2、登录学生信息系统。使用学生账号和密码登录系统。如果没有账号或忘记了密码,可以联系学校的教务部门或相关负责人员进行帮助和解决。3、导航到成绩查询页面。一旦登录成功,能够找到一个...
窦秦养阴: 展开全部#include#include using namespace std;#define N 5//考试的科目数#define M 10//全班的学生的数目 struct student { char name[20]; int score[N]; int all; float aver; }stu[M]; void Creat(student *stu) { int i,n,j; printf("请依次输入学生的姓名和...
济宁市17644685314: C++学生成绩管理系统?
窦秦养阴: 希望能满足lz需要: #include <iostream> using namespace std; class Node { public: char *name; int score; Node *link; Node() { link = NULL; } Node(char *_name, int _score, Node *_link) { name = new char[20]; strcpy(name, _name); score = _score...
济宁市17644685314: 用c++实现一个学生成绩管理系统 - ?
窦秦养阴: 现在几乎都不用MFC了,做管理系统都用 C# + .NET + SQL Server.主体思路:用 Visual Studio 2008 作为编程环境,用 WinForm 拉控件开发用户界面,用 C# 连接数据库SQL Server 2008,然后通过 C# 程序代码对数据库进行操作.具体这样...
济宁市17644685314: 用C++编写一个学生成绩管理系统!急!!! - ?
窦秦养阴: #include<stdio.h>#include<stdlib.h>#include<string.h>#define N 50 /*定义符号常量,代表学生人数最大值*/ int count=0; /*全局变量,用于记录数组的当前位置*/ struct student /*定义结构体类型,代表学生信息*/ { char name[9]; /*学生姓名*/ char ...
济宁市17644685314: C++编程写一个学生成绩管理系统 - ?
窦秦养阴: #include#includestruct STUDENTINFO { long nID; char cName[30]; float fscore[5]; }; //输入学生信息 void inputStudentInfo(struct STUDENTINFO *info,int n); //冒泡排序法,当然还有其他的排序法 void sortInfo(struct STUDENTINFO *info,int n)...
济宁市17644685314: 用C++结构体编写学生成绩系统 - ?
窦秦养阴: #include<fstream.h> #include<iostream.h> #include<iomanip.h> class Stud { private: int no; char name[10]; int score1; int score2; int score3; int score4; public: void getdata() { cout<<"(学号 姓名 高等数学 英语 线性代数 程序设计成绩):"<<...
济宁市17644685314: 用C++编写学生成绩管理系统 - ?
窦秦养阴: 先建库吧 use master go if exists (select * from sysdatabases where name='stuDB') drop database stuDB create database stuDB on primary ( name = 'stu_data', filename = 'd:\project\stu_data.mdf', size = 5mb, filegrowth = 10% ) log on ( name = 'stu_log', filename = 'd:\project\stu_log.ldf', size = 3mb, filegrowth = 10% ) go
济宁市17644685314: 学生成绩管理系统 C++语言 - ?
窦秦养阴: 代码够长的,调试了半天 在Windows XP + VC++ 6.0中正常运行#include<iostream>#include<cstdio> using namespace std; const int Max=30;//字符串最大长度 struct Student;//类声明 void setData(Student &s);//设置对象s的数据 void count(...
济宁市17644685314: c++程序设计,,,,,学生成绩管理系统?
窦秦养阴: #include<vector> #include<iostream> #include<string> #include<sstream> #include<algorithm> using namespace std; struct student { string num; int score[4]; float ave; int tot; }; typedef vector<student>::iterator iter; void in(vector<student> &vec) { ...
济宁市17644685314: 学生成绩管理程序c++ - ?
窦秦养阴: 可以,你看看这个例子,其实文件跟cout和cin是一样的 void ReadConfig() { std::map<std::string, double> config; std::string str; double t; std::ifstream configin("config.txt"); if (!configin) { std::cout << "config.txt" << std::endl; exit(1);} while (...