主题:[原创][求救]C++课程设计(学生学籍管理系统)代码
zhangyan1016
[专家分:0] 发布于 2006-05-15 17:24:00
设计要求
1) 要求利用面向对象的方法以及C++的编程思想来完成系统的设计;
2) 要求在设计的过程中,建立清晰的类层次;
3) 在系统中至少要定义四个类,每个类中要有各自的属性和方法;
4) 在系统的设计中,至少要用到面向对象的一种机制。
学生学籍管理系统的功能要求
要求完成以下功能:
1)能够从屏幕上读取一个学生的信息并将信息存入到数据文件中。
2)能够将指定的信息从文件中删除。
3)能够按编号、姓名对学生的信息进行检索并将检索结果显示在屏幕上。
4)可以统计全部学生的总成绩,及其在班上的排名。
5)能够统计各科的平均成绩及及格率。
6)要求有错误提示功能,例如性别只能输入男女,输入错误提示重新输入。
7)如果检索不到相应的信息应提示用户。
回复列表 (共160个回复)
21 楼
123ufo [专家分:0] 发布于 2006-06-03 10:53:00
大一时我做过“学生成绩管理系统”如果要的话就发邮件给我
guogangrui2006@yahoo.com
22 楼
wslhj [专家分:0] 发布于 2006-06-04 10:06:00
能给我一份吗?
23 楼
wslhj [专家分:0] 发布于 2006-06-04 10:09:00
我也要?QQ115260100谢了
24 楼
wslhj [专家分:0] 发布于 2006-06-04 10:17:00
我也要?QQ115260100
25 楼
射手2 [专家分:0] 发布于 2006-06-04 10:51:00
我也想要啊
来的及么?
QQ:305940335
26 楼
bashenjiyi [专家分:0] 发布于 2006-06-05 16:10:00
我也想要 能发到我的邮箱吗?? shenjian_001@126.com
多谢!!!多谢!!!!!!!!!!
27 楼
chenlie524 [专家分:0] 发布于 2006-06-06 12:28:00
楼主及各位兄弟:
我也想要一份,现在要做课程设计啊,你们帮帮忙!我的QQ是282445106。邮箱是chen_lie@163.com 拜托各位拉!
另外,哪位要是有学校工资发放系统、航空订票系统、图书馆管理系统的都可以告诉我,有急用!致谢![em10]
28 楼
chenlie524 [专家分:0] 发布于 2006-06-06 12:29:00
要求是C语言或C++语言编程的啊!
29 楼
liujiwei [专家分:3840] 发布于 2006-06-06 15:00:00
// 学生信息管理系统.cpp : 定义控制台应用程序的入口点。
//
//姓名为liujiwei,密码为777
#include "stdafx.h"
using namespace std;
struct Student
{
long Number;
string Name;
string Sex;
int DataStruct;
int OperaterSystem;
int DataBase;
int ComputerConsistute;
int Compiler;
Student* Next;
Student(long,string,string,int,int,
int,int,int,Student* Next=NULL);
};
class Operater
{
public:
Operater();
void Insert();
void Delete();
void Print();
void Search();
void Sort();
int Size()const;
Student* Set_position(int);
private:
int Count;
Student* Head;
};
Student::Student(long Number,string Name,string Sex,int DataStruct,
int OperaterSystem,int DataBase,int ComputerConsistute,
int Compiler,Student* Next)
{
this->Number=Number;
this->Name=Name;
this->Sex=Sex;
this->DataBase=DataBase;
this->OperaterSystem=OperaterSystem;
this->DataStruct=DataStruct;
this->ComputerConsistute=ComputerConsistute;
this->Compiler=Compiler;
this->Next=Next;
}
Operater::Operater()
{
Count=0;
Head=NULL;
}
Student* Operater::Set_position(int Position)
{
Student* Q=Head;
for(int i=0;i<Position;i++)
Q=Q->Next;
return Q;
}
void Operater::Insert()
{
int Position;
cout<<"请输入插入的位置"<<endl;
cin>>Position;
while(Position<0||Position>Count)
{
cout<<"您插入的位置不正确"<<endl;
cout<<"请重新输入"<<endl;
cin>>Position;
}
cout<<"请输入插入的学号"<<endl;
long Number;
cin>>Number;
cout<<"请输入插入的姓名"<<endl;
string Name;
cin>>Name;
cout<<"请输入插入的性别"<<endl;
string Sex;
cin>>Sex;
cout<<"请输入数据结构成绩"<<endl;
int DataStruct;
cin>>DataStruct;
cout<<"请输入操作系统成绩"<<endl;
int OperaterSystem;
cin>>OperaterSystem;
cout<<"请输入数据库成绩"<<endl;
int DataBase;
cin>>DataBase;
cout<<"请输入计算机组成原理成绩"<<endl;
int ComputerConsistute;
cin>>ComputerConsistute;
cout<<"请输入编译原理成绩"<<endl;
int Compiler;
cin>>Compiler;
Student *Privous,*Following,*New_student;
if(Position>0)
{
Privous=Set_position(Position-1);
Following=Privous->Next;
}
else
Following=Head;
New_student=new Student(Number,Name,Sex,DataBase,OperaterSystem,DataStruct,
ComputerConsistute,Compiler,Following);
if(New_student==NULL)
return;
if(Position==0)
Head=New_student;
else
Privous->Next=New_student;
Count++;
}
void Operater::Delete()
{
cout<<"请选择删除的位置"<<endl;
int Position;
cin>>Position;
if(Position<0||Position>Count)
return;
Student *Privous,*Following;
if(Position>0)
{
Privous=Set_position(Position-1);
Following=Privous->Next;
}
else
Following=Head;
if(Position==0)
Head=Following->Next;
else
Privous->Next=Following->Next;
delete Following;
Count--;
}
30 楼
liujiwei [专家分:3840] 发布于 2006-06-06 15:01:00
void Operater::Print()
{
cout<<"姓名 性别 数据结构 操作系统 数据库系统 编译原理 计算机组成原理"<<endl;
Student* Q=Head;
while(Q!=NULL)
{
cout<<Q->Name<<" "<<Q->Sex<<" "<<Q->Compiler<<" "<<Q->ComputerConsistute
<<" "<<Q->DataBase<<" "<<Q->DataStruct<<" "<<Q->OperaterSystem<<endl;
Q=Q->Next;
}
}
void Operater::Search()
{
cout<<"请您输入要查找的姓名"<<endl;
string name;
cin>>name;
Student* Q=Head;
while(Q!=NULL)
{
if(Q->Name==name)
{
cout<<Q->Name<<" "<<Q->Sex<<" "<<Q->Compiler<<" "<<Q->ComputerConsistute
<<" "<<Q->DataBase<<" "<<Q->DataStruct<<" "<<Q->OperaterSystem<<endl;
return;
}
Q=Q->Next;
}
cout<<"There is not exist the name!"<<endl;
}
void Operater::Sort()
{
Student *First_unsorted,*Last_sorted,*Current,*Trailing;
if(Head!=NULL)
{
Last_sorted=Head;
while(Last_sorted->Next!=NULL)
{
First_unsorted=Last_sorted->Next;
if(First_unsorted->Number<Head->Number)
{
Last_sorted->Next=First_unsorted->Next;
First_unsorted->Next=Head;
Head=First_unsorted;
}
else
{
Trailing=Head;
Current=Trailing->Next;
while(First_unsorted->Number>Current->Number)
{
Trailing=Current;
Current=Trailing->Next;
}
if(First_unsorted==Current)
Last_sorted=First_unsorted;
else
{
Last_sorted->Next=First_unsorted->Next;
First_unsorted->Next=Current;
Trailing->Next=First_unsorted;
}
}
}
}
}
int Operater::Size()const
{
return Count;
}
int _tmain(int argc, _TCHAR* argv[])
{
Operater student;
cout<<"请输入您的姓名"<<endl;
string Name;
cin>>Name;
if(Name!="liujiwei")
{
cout<<"您的姓名不正确"<<endl;
return 0;
}
cout<<"请输入您的密码"<<endl;
int Pwd;
cin>>Pwd;
if(Pwd!=777)
{
cout<<"您的密码不正确"<<endl;
return 0;
}
cout<<"恭喜您通过验证"<<endl;
cout<<"请选择您的项目 0退出 1添加 2排序 3打印 4删除 5查询"<<endl;
int Select;
cin>>Select;
while(Select!=0)
{
if(Select==1)
student.Insert();
else if(Select==2)
student.Sort();
else if(Select==3)
student.Print();
else if(Select==4)
student.Delete();
else
student.Search();
cout<<"请选择您的项目 0退出 1添加 2排序 3打印 4删除 5查询"<<endl;
cin>>Select;
}
return 0;
}
我来回复