YBK.实验.学生成绩管理系统

一、实验内容:编程实现学生成绩管理系统v1.3
在实验二的基础上,设计程序循环运行,执行其中一个功能后返回主菜单,直至选择6退出,实现密码登录程序最多三次机会,系统菜单、各功能要求使用定义函数和调用。
参考界面如下:


  • 欢迎使用学生成绩管理系统1.1 *
  • 王小明 计算机2003班 2020.10.29 *
  • 1、输入4个同学的代号和成绩            *
    
  • 2、求4人平均分                        *
    
  • 3、求4人总分                          *
    
  • 4、查询某同学的分数                    *
    
  • 5、统计及格率                          *
    
  • 6、退出                                *
    

注:4名同学代号为A,B,C,D;
二、代码:

include

using namespace std;
int Login();
int Menu1();
int Menu2();
int Out();
int main(){
Login();
return 0;
}
Login(){
int userpassword=123;
int password;
int count=0;
do{
printf("请输入密码\n");
scanf("%d",&password);
count++;
}
while (count<=3&&password!=userpassword);
if(count>3){
system("cls");
printf("\n\t\t密码输入错误已达3次,登录失败!\n");
}
else if(count<=3){
printf("登录成功!");
return Menu1();
}
}
int Menu1(){
char A,B,C,D;double a,b,c,d;
std::cout<<"\n请先输入4位同学的代号与成绩:\n";
std::cin>>A>>a>>B>>b>>C>>c>>D>>d;
std::cout<<"\n\t\t\n";
std::cout<<"\t\t
欢迎使用学生成绩管理系统1.3 \n";
std::cout<<"\t\t
王小明 计算机2003班 2020.11.12 \n";
std::cout<<"\t\t
1、输入4位同学的代号和成绩 \n";
std::cout<<"\t\t
2、求4人平均分 \n";
std::cout<<"\t\t
3、求4人总分 \n";
std::cout<<"\t\t
4、查询某同学的分数 \n";
std::cout<<"\t\t
5、统计及格率 \n";
std::cout<<"\t\t
6、退出 \n";
std::cout<<"\n\t\t
\n";
std::cout<<"\t\t请选择:";
char x;
std::cin>>x;
switch(x){
case'1':
std::cout<<"\n\t\t请输入4位同学的代号与成绩:\n\t\t";
std::cin>>A>>a>>B>>b>>C>>c>>D>>d;
return Out();
break;
case'2':
std::cout<<"\n\t\t4人平均分="<<(a+b+c+d)/4;
return Out();
break;
case'3':
std::cout<<"\n\t\t4人总分="<<a+b+c+d;
return Out();
break;
case'4':
std::cout<<"\n\t\t请输入你想查询的同学的代号:";
char y;
std::cin>>y;
switch(y){
case'A':std::cout<<"\n\t\t"<<y<<"的成绩为"<<a;break;
case'B':std::cout<<"\n\t\t"<<y<<"的成绩为"<<b;break;
case'C':std::cout<<"\n\t\t"<<y<<"的成绩为"<<c;break;
case'D':std::cout<<"\n\t\t"<<y<<"的成绩为"<<d;break;
}
return Out();
break;
case'5':
int cnt;
cnt0;
std::cout<<"\n\t\t请再次输入4人成绩:";
for(int i=1;i<=4;i++) {
double chengji;
std::cin>>chengji;
if(chengji>=90) cnt++;}
std::cout<<"\n\t\t及格率为:"; printf("%.2lf",(double)cnt/4);
return Out();
break;
case'6':
system("cls");
cout<<"\n\t您已退出系统!\n";
break;
default:
system("cls");
cout<<"\n\t输入非法,请重新选择!\n";
return Menu2();
break;
}
}
int Menu2(){
char A,B,C,D;double a,b,c,d;
std::cout<<"\n\t\t\n";
std::cout<<"\t\t
欢迎使用学生成绩管理系统1.3 \n";
std::cout<<"\t\t
王小明 计算机2003班 2020.11.12 \n";
std::cout<<"\t\t
1、输入4个同学的代号和成绩 \n";
std::cout<<"\t\t
2、求4人平均分 \n";
std::cout<<"\t\t
3、求4人总分 \n";
std::cout<<"\t\t
4、查询某同学的分数 \n";
std::cout<<"\t\t
5、统计及格率 \n";
std::cout<<"\t\t
6、退出 \n";
std::cout<<"\n\t\t
\n";
std::cout<<"\t\t请再次输入4位同学的代号和成绩:";
std::cin>>A>>a>>B>>b>>C>>c>>D>>d;
std::cout<<"\t\t请选择:";
char x;
std::cin>>x;
switch(x){
case'1':
std::cout<<"\n\t\t请输入4位同学的代号与成绩:\n\t\t";
std::cin>>A>>a>>B>>b>>C>>c>>D>>d;
return Out();
break;
case'2':
std::cout<<"\n\t\t4人平均分="<<(a+b+c+d)/4;
return Out();
break;
case'3':
std::cout<<"\n\t\t4人总分="<<a+b+c+d;
return Out();
break;
case'4':
std::cout<<"\n\t\t请输入你想查询的同学的代号:";
char y;
std::cin>>y;
switch(y){
case'A':std::cout<<"\n\t\t"<<y<<"的成绩为"<<a;break;
case'B':std::cout<<"\n\t\t"<<y<<"的成绩为"<<b;break;
case'C':std::cout<<"\n\t\t"<<y<<"的成绩为"<<c;break;
case'D':std::cout<<"\n\t\t"<<y<<"的成绩为"<<d;break;
}
return Out();
break;
case'5':
std::cout<<"\n\t\t请再次输入4人成绩:";
int cnt;
cnt
0;
for(int i=1;i<=4;i++) {
double chengji;
std::cin>>chengji;
if(chengji>=90) cnt++;}
std::cout<<"\n\t\t及格率为:"; printf("%.2lf",(double)cnt/4);
return Out();
break;
case'6':
system("cls");cout<<"\n\t您已退出系统!\n";
break;
default:
system("cls");
cout<<"\n\t输入非法,请重新选择!\n";
return Menu2();
break;
}
}
int Out(){
char m;
std::cout<<"\n";
std::cout<<"\n\t\t1.返回系统菜单\n";
std::cout<<"\t\t2.退出系统\n";
std::cout<<"\t\t请选择:";
std::cin>>m;
switch(m){
case'1':system("cls");return Menu2();break;
case'2':system("cls");cout<<"\n\t\t您已退出系统!\n";break;
default:std::cout<<"\t请输入正确选项\n";return Out();
break;}
}

posted on 2020-11-24 15:22  养一朵花儿  阅读(200)  评论(0)    收藏  举报