马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 jhanker 于 2020-6-24 14:45 编辑
注意:由于我的账号没有上传附件及图片的权限,只能让大家自己复制代码到VC++环境想自行编译!
用C++编写的控制台学籍管理系统
在VC++6.0中运行通过
#include<iostream>
#include<fstream>
#include <string>
using namespace std;
#define M 100
int N=0;
class student
{
public:
student();
void set();
void add();
void del();
void change();
void search();
private:
int num[M],chinese[M],math[M],c[M];
string name[M];
};
student::student(){}
void student::set()
{
int i;
for(i=0;i<M;i++)
{
cout<<"姓名输入‘0’时,停止输入"<<endl;
cout<<"请输入学生姓名"<<endl;
cin>>name[i];
if(name[i]=="0")break;
if(name[i]!="0")
{
N++;
cout<<"请输入学号"<<endl;
cin>>num[i];
cout<<"请输入语文成绩"<<endl;
cin>>chinese[i];
cout<<"请输入数学成绩"<<endl;
cin>>math[i];
cout<<"请输入c语言成绩"<<endl;
cin>>c[i];
}
cout<<endl;
}
}
void student::add()
{
N++;
cout<<"请输入添加的信息"<<endl;
cout<<"请输入学号"<<endl;//这里缺少学号是否同号判断,自己改一下吧
cin>>num[N-1];
cout<<"请输入姓名"<<endl;
cin>>name[N-1];
cout<<"请输入语文成绩"<<endl;
cin>>chinese[N-1];
cout<<"请输入数学成绩"<<endl;
cin>>math[N-1];
cout<<"请输入c语言成绩"<<endl;
cin>>c[N-1];
cout<<"添加成功"<<endl;
}
void student::del()
{
int k,i,j,d=0;//d用来判断是否有要删除的学生记录。
cout<<"清除如要删除的学生学号"<<endl;
cin>>k;
for(i=0;i<=N;i++)
{
if(num[i]==k)
{
for(j=i;j<N;j++)
{
num[j]=num[j+1];
name[j]=name[j+1];
chinese[j]=chinese[j+1];
math[j]=math[j+1];
c[j]=c[j+1];
i--;/*为什么加上这句自己想想吧,如果后面一条记录也和前面记录一样,比如输入了两个一样的学号的。毕竟你的这程序是允许这样做的*/
d=1;
N--;
}
}
//cout<<"已删除该生信息"<<endl;
}
if(d==0)
cout<<"没有学生信息"<<endl;
else
cout<<"已删除该生信息"<<endl;
}
void student::change()
{
int a,b,d=0;
cout<<"请输入要修改的学生学号"<<endl;
cin>>a;
for(b=0;b<=M;b++)
{
if(num[b]==a)
{
cout<<"请输入新数据"<<endl;
cout<<"请修改姓名"<<endl;
cin>>name[b];
cout<<"请修改语文成绩"<<endl;
cin>>chinese[b];
cout<<"请修改数学成绩"<<endl;
cin>>math[b];
cout<<"请修改c语言成绩"<<endl;
cin>>c[b];
d = 1;
}
//cout<<"信息已修改"<<endl;
}
if(d==0)
cout<<"没有学生信息"<<endl;
else
cout<<"信息已修改"<<endl;
}
void student::search()
{
int a,b,d=0;
cout<<"请输入要查询的学生学号"<<endl;
cin>>b;
for(a=0;a<=M;a++)
if(num[a]==b)
{
cout<<"您要查询的学生信息"<<endl;
cout<<"学号\t"<<num[a];
cout<<"姓名\t"<<name[a];
cout<<"语文成绩\t"<<chinese[a];
cout<<"数学成绩\t"<<math[a];
cout<<"c语言成绩"<<c[a]<<endl;
d=1;
}
if(d==0)
cout<<"查无此人"<<endl;
}
int main()
{
student stu;
char ch;
void menu();
menu();
cin>>ch;
while(ch!='0')
{
system("cls");
switch(ch)
{
case'1': stu.set();break;
case'2': stu.add();break;
case'3': stu.del();break;
case'4': stu.change();break;
case'5': stu.search();break;
case'0':cout<<"退出";break;
default:cout<<"错误"<<endl;break;
}
menu();
cin>>ch;
}
return 0;}//加上这行
void menu()
{cout<<"................................................."<<endl;
cout<<"学生管理系统"<<endl;
cout<<"1.输入学生信息"<<endl;
cout<<"2.添加学生信息"<<endl;
cout<<"3.删除学生信息"<<endl;
cout<<"4.修改学生信息"<<endl;
cout<<"5.查找学生信息"<<endl;
cout<<"0.退出管理系统"<<endl;
cout<<".................................................."<<endl;
}
|