问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C++ C语言程序设计 题目:学生信息管理系统 (概述操作全程,最好要详细点的)会额外加分!

发布网友 发布时间:2022-05-23 02:12

我来回答

6个回答

热心网友 时间:2023-10-10 03:05

我以前做的....要按你这个做不是一下两下弄得完的吧........
你看看能改着用就改这用吧

vc,tc,win-tc编译通过
33.学生成绩管理程序设计
(1)选项菜单集成各功能函数模块
(2)录入学生成绩(姓名、学号、语文、数学成绩,总分自动计算)
(3)按总分排名次
(4)按姓名查找某学生成绩
(5)统计各课程的平均分、及格率、最高分、最低分
#include "stdio.h"
#include "windows.h"
int sum=0,x,data=0;
struct STU
{
char name[20];
char num[20];
int chinese_great;
int math_great;
int all;
}stu[200];/*定义学生结构体以及学生结构体数组*/
struct STU *temp;
struct STU *p[200];
void in();/*自定义学生信息输入函数*/
void all_swap();/*总分排名*/
void menu();/*菜单*/
void name_swap();/*姓名查找*/
void tongji();/*统计*/
int ssame(char a[],char b[]);/*字符串比对函数*/
void over();/*退出*/

void main()
{
menu();
switch (x)
{
case 1 : data=1;system("cls");in();break;
case 2 : system("cls");all_swap();break;
case 3 : system("cls");name_swap();break;
case 4 : system("cls");tongji();break;
}

}
/*菜单*/
void menu()
{
system("cls");
printf("******************************学生成绩管理系统****************************\n");
printf("请选择你需要的操作:\n");
printf("1.录入学生成绩(姓名、学号、语文、数学成绩,总分自动计算)\n");
printf("2.按总分排名次\n");
printf("3.按姓名查找某学生成绩\n");
printf("4.统计各课程的平均分、及格率、最高分、最低分\n");
printf("5.打印成绩表\n");
scanf("%d",&x);

}
/*学生信息输入函数*/
void in()
{
int i;
int end=1;
for(i=0;i<200;i++)
{
sum++;
printf("请输入第%d个学生的姓名: ",i+1);
scanf("%s",&stu.name);
printf("请输入第%d个学生的学号: ",i+1);
scanf("%s",&stu.num);
printf("请输入第%d个学生的语文成绩: ",i+1);
scanf("%d",&stu.chinese_great);
printf("请输入第%d个学生的数学成绩: ",i+1);
scanf("%d",&stu.math_great);
stu.all=stu.chinese_great+stu.math_great;
printf("\n\n\n\n\n \n 1:继续录入\n 2:结束录入\n 请选择:");
scanf("%d",&end);
if(end==2)
break;
else if (end==1) system("cls");
else over();
}/*FOR结束*/
system("cls");
main();
}/*学生信息输入函数结束*/
/*按总分排名*/
void all_swap()
{
int i,j,q=0;
for(i=0;i<=sum;i++)
p=&stu;

for(i=0;i<=sum-1;i++)
for (j=i+1;j<=sum;j++)
{
if(stu.all<stu[j].all)
{
temp=p;
p=p[j];
p[j]=temp;

}

}
printf(" 名次 姓名 学号 总成绩 \n");
for(i=0;i<sum;i++)
printf(" %d %s %s %d \n",i+1,p->name,p->num,p->all);
printf("输入 1 返回主菜单,输入其他退出");
scanf("%d",&q);
if(q==1)
{
system("cls");
main();
}
else over();

}/*总分查询结束*/
/*名字查询*/
void name_swap()
{
int i,q;
char temp[20];
for(i=0;i<=sum;i++)
p=&stu;

printf("\n\n\n\n\n\n\n\n\n\ 请输入您要查询的学生姓名\n");
scanf("%s",&temp);
for (i=0;i<=sum;i++)
{
if(ssame(temp,p->name)==0)
{
system("cls");
printf("你所查找的学生已找到\n 姓名:%s \n 学号: %s \n 数学成绩:%d \n 语文成绩:%d \n 总成绩:%d ",p->name,p->num,p->chinese_great,p->math_great,p->all);
printf("\n\n\n\n\n\n 输入 1 返回主菜单,输入其他退出");
scanf("%d",&q);
if(q==1)
{
system("cls");
main();
}
else over();
}
else
{
system("cls");
printf("\n\n\n\n\n\n 未找到与%s有关的记录",temp);
printf("\n\n\n\n\n\n 输入 1 返回主菜单,输入其他退出");
scanf("%d",&q);
if(q==1)
{
system("cls");
main();
}
else over();
}

}

} /*名字查询结束*/
/*统计*/
void tongji()
{
int i,q,chinese_max=0,chinese_min=9999,math_max=0,math_min=9999;long sum_chinese=0,sum_math=0;
float chinese_v,math_v,chinese_p,math_p,p_c=0,p_m=0;
if(data==1)
{

for(i=0;i<=sum;i++)
{
p=&stu;
sum_chinese=p->chinese_great+sum_chinese;
sum_math=p->math_great+sum_math;
if(p->chinese_great>=60)
p_c++;
if(p->math_great>=60)
p_m++;

}
chinese_v=sum_chinese/sum;/*语文平均分*/
math_v=sum_math/sum;/*数学平均分*/
chinese_p=(p_c/sum)*100;/*语文及格率*/
math_p=(p_m/sum)*100;/*数学及格率*/
for(i=0;i<sum;i++)
{
chinese_max=max(chinese_max,p->chinese_great);
chinese_min=min(chinese_min,p->chinese_great);
math_max=max(math_max,p->math_great);
math_min=min(math_min,p->math_great);
}
printf(" 科目 平均分 及格率 最高分 最低分\n");
printf(" 语文 %f 百分之%f %d %d \n",chinese_v,chinese_p,chinese_max,chinese_min);
printf(" 数学 %f 百分之%f %d %d \n",math_v,math_p,math_max,math_min);
printf("\n\n\n\n\n\n 输入 1 返回主菜单,输入其他退出");
scanf("%d",&q);
if(q==1)
{
system("cls");
main();
}
else over();

}
else main();
}
/*字符串比对*/
int ssame(char a[],char b[])
{
int p=0,flag=0;
while (a[p]!='\0'||b[p]!='\0')
{
if((a[p]>b[p]) || (a[p]<b[p]))
{
flag=1;break;
}

p++;
}
if(flag==0)
{
if((a[p]!='\0') || (b[p]!='\0'))
flag=1;
}
return flag;
}/*字符串比对结束*/
/*退出*/
void over()
{
int q;
system("cls");
printf("\n\n\n\n\n\n\n\n\n 此操作将导致你退出本程序。\n1:确认退出 \n2:返回主菜单");
scanf("%d",&q);
if(q==1)
exit(1);
else if (q==2)
main();
else over();
}

热心网友 时间:2023-10-10 03:05

等我啊,我在写,写的很详细的,包您满意!请留下您的邮箱!

热心网友 时间:2023-10-10 03:06

我之前做了一个“学籍管理系统”也就是学生信息管理系统,功能及格式跟您的要求较相像,并且也是大作业来的,有设计说明文档,可供参考,这个要吗,如果用得着请发个邮箱地址来。追问hanyu1990@vip.qq.com

追答已经发送到hanyu1990@vip.qq.com了

热心网友 时间:2023-10-10 03:06

谁会也给我发一份吧
wangyanweiqwa@163.com
感激不尽

热心网友 时间:2023-10-10 03:07

以前做过 没有那么详细

热心网友 时间:2023-10-10 03:08

麻烦你写好了发到我邮箱哦,我也等着急用1215776293@qq.com
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
养前面跟啥字组词 凯迪拉克保险杠外杠.日间行车灯.大灯镜面更换一下4s店需要多少钱?_百 ... ...阻止,因为该内容没有签署有效的安全证书”,是什么原因?急!!!_百度... win7系统打开文件显示internet安全设置阻止打开 电脑IE提示安全设置阻止打开文件怎么回事? 为什么Internet安全设置会阻止文件? 西安市供销合作联社西安市社职能 早上弯腰搬东西,感觉腰部中间响了一下,进了点气,然后随着运动扩散到整个... 一弯腰伸直腰的时候腰响了一声就很痛了 长时间弯腰收拾东西,猛伸直时,感觉响了一下,疼痛难忍,动不了,现在直不... 求学生信息管理系统(vs+sql)外加文档.选中之后再加分.如果是收费的话您就免了 急求学生信息管理系统的所有文档、原代码软件工程 在线等!1041915570@qq.com 急求学生信息管理系统的所有文档 软件工程 403194753@qq.com myelispe环境j2ee语言 最要是想看文档怎么写~ 学生信息管理系统和项目文档 山村老尸的四个字拼音是什么 上次有个朋友要求一个字:尸字下面一个九的读音得到答案了吗? 什么中药治疗便秘 尸和小合成一个字 求一个治血虚便秘的中药方剂?感激不尽! 尸字旁的字有。 中药治便秘的汤剂有哪些 尸字下面一个死念什么 尸的部首是什么字 吃什么中药治便秘 哪个朋友能给点点意见啊?非常感谢! 尸字是不是多音字???//??? &quot;尸&quot;在古代汉语中的意思 “尸”字的意思是什么? 尸 这字念什么 两委会是什么 两委是什么 蝴蝶鲤怎么繁殖,多久繁殖一次 公司总经理年终工作总结范文 怎么看自己的是什么时间注册的 有没有好用的适用于手机的图书分类软件? 网点柜台经理年终总结 小说阅读软件哪个好用?关键有没有图书分类的小功能,就有点像建几个文件夹把书分开放进去那种。书多了有 有没有一种书籍分类管理软件啊 能把电子书或者图书自动分类的软件 求图书编目批处理软件! 2002年1月12日中午12时左右出生的男孩五行属哪种,缺什么,如何补救 姓孙原本取为孜豪后算命说缺木男孩 2008年10月9号下午4点06分生的夏姓男孩五行缺木,麻烦大家给取个好名 五行缺木的男孩取名雷梓宇好吗 我儿子是2008年8月26日9点35分生的,五行缺木,但纳音中有木,取名一定要有带木字吗? vivo手机计步器怎么和微信好友连在一起 怎么看自己的什么时候注册的 地图有哪几种 怎么看是什么时候注册的 怎么看是哪一年注册的 怎么吃龙眼(桂圆)不上火如题 谢谢了