📄 4.txt
字号:
#include<iostream.h>
#include<stdlib.h>
#include<string.h>
struct Student
{
int num;//学号
char name[20];//姓名
float score1;//成绩1
float score2;//成绩2
float score3;//成绩3
}stu[50];
void luru(struct Student *p)//录入函数
{
cout<<"学号:"<<endl;
cin>>p->num;
cout<<"姓名:"<<endl;
cin>>p->name;
cout<<"三门成绩:"<<endl;
cout<<"成绩1:"<<endl;
cin>>p->score1;
cout<<"成绩2:"<<endl;
cin>>p->score2;
cout<<"成绩3:"<<endl;
cin>>p->score3;
}
void paixu(struct Student *p,int x,float a[])//排序函数
{
int i,j;
float k;
struct Student temp;
for(i=0;i<x;i++)
{
for(j=0;j<x-i;j++)
{
if(a[j]<a[j+1])
{
temp.num=stu[j].num;
stu[j].num=stu[j+1].num;
stu[j+1].num=temp.num;
strcpy(temp.name,stu[j].name);
strcpy(stu[j].name,stu[j+1].name);
strcpy(stu[j+1].name,temp.name);
temp.score1=stu[j].score1;
stu[j].score1=stu[j+1].score1;
stu[j+1].score1=temp.score1;
temp.score2=stu[j].score2;
stu[j].score2=stu[j+1].score2;
stu[j+1].score2=temp.score2;
temp.score3=stu[j].score3;
stu[j].score3=stu[j+1].score3;
stu[j+1].score3=temp.score3;
k=a[j];
a[j]=a[j+1];
a[j+1]=k;
}
}
}
}
void hdisplay(struct Student *p,int x,float a[])//排序后的显示函数
{
int i;
cout<<"排序后的学员信息如下:"<<endl;
cout<<"学号\t姓名\t成绩1\t成绩2\t成绩3\t平均成绩"<<endl;
for(i=0;i<x;i++)
{
cout<<p->num<<p->name<<p->score1<<p->score2<<p->score3<<a[i]<<endl;
p++;
}
}
int shanchu(struct Student *p,int x,int num,float a[])//删除函数
{
int i,j,result=0;
for(i=0;i<x;i++)
{
if(p->num==num)
{
for(j=i;j<x;j++)
{
stu[j].num=stu[j+1].num;
strcpy(stu[j].name,stu[j+1].name);
stu[j].score1=stu[j+1].score1;
stu[j].score2=stu[j+1].score2;
stu[j].score3=stu[j+1].score3;
a[j]=a[j+1];
}
result=1;
break;
}
p++;
}
if(result==0)
{
cout<<"该学生不存在!"<<endl;
}
return result;
}
void chaxun(struct Student *p,int x,int num,float a[])
{
int i,result=0;
for(i=0;i<x;i++)
{
if(p->num==num)
{
cout<<"学号"<<"姓名"<<"成绩1"<<"成绩2"<<"成绩3"<<"平均成绩"<<endl;
cout<<p->num<<p->name<<p->score1<<p->score2<<p->score3<<a[i]<<endl;
result=1;
break;
}
p++;
}
if(result==0)
{
cout<<"该学生不存在!"<<endl;
}
}
void xiugai(struct Student *p,int x,int num,float a[])
{
char name[20];
int i,j,result=0;
int code;
float s1,s2,s3,ave;
for(i=0;i<x;i++)
{
if(p->num==num)
{
cout<<"请输入修改后的学号:"<<endl;
cin>>code;
for(j=0;j<x;j++)
{
if(stu[j].num==code)
{
cout<<"该学号已经存在!"<<endl;
result=1;
break;
}
}
if(result!=1)
{
cout<<"请输入修改后的姓名:"<<endl;
cin>>name;
cout<<"成绩1:"<<endl;
cin>>s1;
cout<<"成绩2:"<<endl;
cin>>s2;
cout<<"成绩3:"<<endl;
cin>>s3;
ave=(s1+s2+s3)/3;
stu[i].num=code;
strcpy(stu[i].name,name);
stu[i].score1=s1;
stu[i].score2=s2;
stu[i].score3=s3;
a[i]=ave;
result=2;
break;
}
}
p++;
}
if(result==0){
cout<<"该学生不存在!";
}
}
void main()
{
char kl[10], num[10];
cout<<"********登陆********"<<endl;
cout<<"用户名:";
cin>>kl;
cout<<"密码:";
cin>>num;
if(strcmp(kl,"mrzhang")==0&&strcmp(num,"0583291")==0)
{
cout<<"登陆成功!"<<endl;
}
else
{
cout<<"登陆失败!"<<endl;exit(1);
}
char ch1,ch2,ch3,ch4;//定义4个字符函数判断是否要实现功能
float ave[50];//平均成绩
//循环变量i 功能编号num1 要删除的学生学号num2 要查询的学生学号num3 要修改的学生学号num4 判断是否删除学生信息result
int i=0,num1,num2,num3,num4,result;
do
{
cout<<"-------学生管理系统-------"<<endl;
cout<<"1、添加学生信息"<<endl;
cout<<"2、删除学生信息"<<endl;
cout<<"3、学生成绩排序"<<endl;
cout<<"4、查询学生信息"<<endl;
cout<<"5、修改学生信息"<<endl;
cout<<"请选择功能编号:"<<endl;
cin>>num1;
switch(num1)
{
case 1:
do
{
cout<<"请录入学生信息:"<<endl;
luru(&stu[i]);
ave[i]=(stu[i].score1+stu[i].score2+stu[i].score3)/3;
i++;
cout<<" 是否继续添加?<y or n>"<<endl;
cin>>&ch1;
}while(ch1=='y');
break;
case 2:
do
{
cout<<"请输入要删除的学生的学号:"<<endl;
cin>>num2;
result=shanchu(stu,i,num2,ave);
if(result==1){//如果删除成功信息条数-1
i--;
}
cout<<"是否继续删除?<y or n>"<<endl;
cin>>&ch2;
}while(ch2=='y');
break;
case 3:
paixu(stu,i,ave);
hdisplay(stu,i,ave);
break;
case 4:
do
{
cout<<"请输入学生的学号:"<<endl;
cin>>num3;
chaxun(stu,i,num3,ave);
cout<<"是否继续查询?<y or n>"<<endl;
cin>>&ch3;
}while(ch3=='y');
break;
case 5:
do
{
cout<<"请输入要修改信息的学生的学号:"<<endl;
cin>>num4;
xiugai(stu,i,num4,ave);
cout<<"是否继续修改?<y or n>"<<endl;
cin>>&ch4;
}while(ch4=='y');
break;
}
cout<<"是否选择其他功能?<y or n>"<<endl;
cin>>&ch3;
}while(ch3=='y');
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -