有错请指出
啊~,答应大家的来了
头文件:
#include<iostream>
#include<stdlib.h>
#include<windows.h>
iostream是标准头文件,stdlib.h也可以写成cstdlib,windows.h,用Sleep
数据定义:
int x,y=0;//x是输入,y是xm的下标,初始化y为0
详解见代码。
结构体类型:
struct Student
{char name[100];//名字int age;//年龄char sex;//性别int Maths;//数学成绩int Chinese;//语文成绩int English;//英语成绩
}xm[10000];
详解见代码。
函数:
添加学生:
void add_student()//添加学生
{cout<<"请输入名字:";cin>>xm[y].name;cout<<"请输入年龄:";cin>>xm[y].age;cout<<"请输入性别(男输入m,女输入f):";cin>>xm[y].sex;y++;
}
y++指个数+1
删除最后一个学生 :
void del_student()//删除最后一个学生
{if(y>0){y--;}else{cout<<"没有学生可删除!"<<endl;}
}
y--是人数-1,在输入时就会覆盖
添加成绩 :
void add_score()//添加成绩
{cout<<"你要输入序号为多少的?";int v;cin>>v;//输入序号if(v<0 || v>=y){cout<<"序号超出范围!"<<endl;return;}cout<<"请输入数学成绩:";cin>>xm[v].Maths;cout<<"请输入语文成绩:";cin>>xm[v].Chinese;cout<<"请输入英语成绩:";cin>>xm[v].English;
}
额····没什么可说的
列出表格:
void list_column()//列出表格
{for(int i=0;i<y;i++){cout<<"姓名:"<<xm[i].name<<endl;cout<<"年龄:"<<xm[i].age<<endl;cout<<"性别:"<<xm[i].sex<<endl;cout<<"数学成绩:"<<xm[i].Maths<<endl;cout<<"语文成绩:"<<xm[i].Chinese<<endl;cout<<"英语成绩:"<<xm[i].English<<endl;cout<<endl;}
}
额····同上
清屏函数:
void clearScreen()//清屏函数
{system("cls");
}
这个是个充数的
main:
int main()
{cout<<"\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t";cout<<"欢迎使用学生管理系统!";Sleep(3000);clearScreen();while(1){cout<<"+----------------------------+\n";cout<<"|请选择您需要的功能 |\n";cout<<"|1.添加学生 |\n";cout<<"|2.删除最后一个学生 |\n";cout<<"|3.添加成绩 |\n";cout<<"|4.列出表格 |\n";cout<<"|0.退出 |\n";cout<<"+----------------------------+\n";cin>>x;switch(x){case 1:add_student();break;case 2:del_student();Sleep(500);//等待,让用户看见break;case 3:add_score();break;case 4:list_column();Sleep(10000);//等待,让用户看见break;case 0:cout<<"真的退出吗?\n1.是\n2.我打错了\n";int asdf;cin>>asdf;switch (asdf) {case 1:return 0;case 2:break;default:cout<<"输出错误"<<endl;Sleep(1000);//等待,让用户看见break;}break;default:cout<<"输出错误"<<endl;Sleep(1000);//等待,让用户看见break;}clearScreen();}return 0;//结束
}
一个死循环,一个Switch,差不多了~~~~~
完整代码:
//学生管理系统C++版
//头文件
#include<iostream>
#include<stdlib.h>
#include<windows.h>
using namespace std;int x,y=0;//x是输入,y是xm的下标,初始化y为0//创建Student类型
struct Student
{char name[100];//名字int age;//年龄char sex;//性别int Maths;//数学成绩int Chinese;//语文成绩int English;//英语成绩
}xm[10000];void add_student()//添加学生
{cout<<"请输入名字:";cin>>xm[y].name;cout<<"请输入年龄:";cin>>xm[y].age;cout<<"请输入性别(男输入m,女输入f):";cin>>xm[y].sex;y++;
}void del_student()//删除最后一个学生
{if(y>0){y--;}else{cout<<"没有学生可删除!"<<endl;}
}void add_score()//添加成绩
{cout<<"你要输入序号为多少的?";int v;cin>>v;//输入序号if(v<0 || v>=y){cout<<"序号超出范围!"<<endl;return;}cout<<"请输入数学成绩:";cin>>xm[v].Maths;cout<<"请输入语文成绩:";cin>>xm[v].Chinese;cout<<"请输入英语成绩:";cin>>xm[v].English;
} void list_column()//列出表格
{for(int i=0;i<y;i++){cout<<"姓名:"<<xm[i].name<<endl;cout<<"年龄:"<<xm[i].age<<endl;cout<<"性别:"<<xm[i].sex<<endl;cout<<"数学成绩:"<<xm[i].Maths<<endl;cout<<"语文成绩:"<<xm[i].Chinese<<endl;cout<<"英语成绩:"<<xm[i].English<<endl;cout<<endl;}
}void clearScreen()//清屏函数
{system("cls");
}int main()
{cout<<"\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t";cout<<"欢迎使用学生管理系统!";Sleep(3000);clearScreen();while(1){cout<<"+-----------------------------+\n";cout<<"|请选择您需要的功能 |\n";cout<<"|1.添加学生 |\n";cout<<"|2.删除最后一个学生 |\n";cout<<"|3.添加成绩 |\n";cout<<"|4.列出表格 |\n";cout<<"|0.退出 |\n";cout<<"+-----------------------------+\n";cin>>x;switch(x){case 1:add_student();break;case 2:del_student();Sleep(500);//等待,让用户看见break;case 3:add_score();break;case 4:list_column();Sleep(10000);//等待,让用户看见break;case 0:cout<<"真的退出吗?\n1.是\n2.我打错了\n";int asdf;cin>>asdf;switch (asdf) {case 1:return 0;case 2:break;default:cout<<"输出错误"<<endl;Sleep(1000);//等待,让用户看见break;}break;default:cout<<"输出错误"<<endl;Sleep(1000);//等待,让用户看见break;}clearScreen();}return 0;//结束
}
——————————————————————————————————————————
结束!感谢您的观看 ,点个赞呗