|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
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;
- }
复制代码 |
|