永发信息网

做一个学生成绩管理系统

答案:1  悬赏:80  手机版
解决时间 2021-06-05 18:25

设计要求:要求能够输入学生成绩、排序、打印输出、制作学生成绩单

(1) 用C语言编写一个学生成绩管理系统;

(2) 要求中文显示;

(3) 要求能够输入多位学生成绩;

(4) 要求能够计算平均分,总分,按成绩排序;

(5) 要求能够打印输出学生成绩单。

要求能够统计个分数区间人数

我这是毕业设计啊,希望大家能给个,谢谢各位了

最佳答案

不知道这个行不?


直接论坛拉过来的,中间有乱码删除即可!









#include <conio.h>
#include <stdio.h>
FILE *fp;
int a[100][10];
int stu;
inputx()
{
gotoxy(15,13);
textcolor(RED);
printf("请输入你们班的学生数:");
scanf("%d",&stu);
}
input()
{
int i;
for(i=1;i<=stu;i++)
{ scanf("%8d%8d%8d%8d%8d%8d",&a[i][1],&a[i][2],&a[i][3],&a[i][4],&a[i][5],&a[i][6]);
}
}
print1()
{
int i,j;
int b[100],c[100];
int t,loc,k;
fp=fopen("成绩表.txt","w");
for(i=1;i<=stu;i++)
{
a[i][7]=0;
for(j=2;j<=6;j++)
a[i][7]=a[i][7]+a[i][j];
a[i][8]=a[i][7]/5;
}
for(i=1;i<=stu;i++)
{
b[i]=a[i][7];
c[i]=i;
}
for(i=1;i<=stu-1;i++)
{
loc=i;
for(j=i+1;j<=stu;j++)
if(b[j]>b[loc])
loc=j;
if(loc!=i)
{t=b[i];b[i]=b[loc];b[loc]=t;
t=c[i];c[i]=c[loc];c[loc]=t;
}
}
for(i=1;i<=stu;i++)
for(k=1;k<=stu;k++)
if(c[k]==i)
{
a[i][9]=k;
break;
}
for(i=1;i<=stu;i++)
{
for(j=1;j<=9;j++)
printf("%-6d",a[i][j]);
printf("\n");
}

fprintf(fp,"学号 语文 数学 英语 物理 化学 总分 均分 名次\n");
for(i=1;i<=stu;i++)
{
for(j=1;j<=9;j++)
fprintf(fp,"%-6d",a[i][j]);
fprintf(fp,"\n");
}
}
print2()
{
int i,j;
int m[3][6];
for(j=2;j<=6;j++)
{
m[1][j-1]=0;
for(i=1;i<=stu;i++)
m[1][j-1]=m[1][j-1]+a[i][j];
m[2][j-1]=m[1][j-1]/stu;
}
for(i=1;i<=2;i++)
{
for(j=1;j<=5;j++)
printf("%-6d",m[i][j]);
printf("\n");
}
}
change()
{
int m,b,c,i,n=0;
printf("请输入您要修改的学生的学号:");
scanf("%d",&m);
printf("1,语文;2,数学;3,英语;4,物理;5,化学;\n");
printf("请选择您要修改的科目:");
scanf("%d",&b);
printf("请输入新的学生成绩:");
scanf("%d",&c);
for(i=1;i<=stu;i++)
if(m!=a[i][1]) n++;
else {
n++;
break;
}
a[n][b+1]=c;
printf("\n重新输出成绩表\n");
printf("学号 语文 数学 英语 物理 化学 总分 均分 名次\n");
print1();
go();
}
go()
{
int n;
printf("\n现在您将会遇到以下几种情况:\n");
printf("1,继续查询;2,修改数据;3,重新运行;4,结束程序;\n");
printf("请您根据需要按键选择:");
scanf("%d",&n);
if(n==1)find();
if(n==2)change();
if(n==3)main();
if(n==4){
clrscr();
printf("*********感谢您使用本程序*********\n");
printf("这是我编写的第一个系统程序,为了感谢您的使用,请到3509寝室找李晓锋领奖\n");
printf("\n\n");
printf("再次感谢您的使用\n");
printf("------------ByeBye----------------");
}
getch();
}
find1()
{
int n,i;
printf("请输入您要查询的学生的名次:");
scanf("%d",&n);
printf("名次 学号 语文 数学 英语 物理 化学 总分 均分\n");
for(i=1;i<=stu;i++)
if(n==a[i][9])
{ printf("%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d",a[i][9],a[i][1],a[i][2],a[i][3],a[i][4],a[i][5],a[i][6],a[i][7],a[i][8]);
break;
}
printf("\n");
go();
}



  • 2004-11-10 08:38
  • 回复









  • zfy0422
  • 0位粉丝

2楼

find2()
{
int n,i;
printf("请输入您要查询的学生的学号:");
scanf("%d",&n);
printf("学号 语文 数学 英语 物理 化学 总分 均分 名次\n");
for(i=1;i<=stu;i++)
if(n==a[i][1])
{ printf("%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d",a[i][1],a[i][2],a[i][3],a[i][4],a[i][5],a[i][6],a[i][7],a[i][8],a[i][9]);
break;
}
printf("\n");
go();
}
find3_1(int n)
{
int i;
printf("学号 名次 语文 数学 英语 物理 化学 总分 均分\n");
for(i=1;i<=stu;i++)
if(a[i][n+1]>=90)
{ printf("%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d",a[i][1],a[i][9],a[i][2],a[i][3],a[i][4],a[i][5],a[i][6],a[i][7],a[i][8]);
printf("\n");
}
go();
}
find3()
{
int n;
printf("现有以下五种科目供查询:\n");
printf("1,语文;2,数学;3,英语;4,物理;5,化学;\n");
printf("请按键选择:");
scanf("%d",&n);
find3_1(n);
}
find()
{
int m;
printf("根据您的要求,有以下3种查询方式: \n");
printf("1,按名次查询;\n");
printf("2,按学号查询;\n");
printf("3,查询某科成绩在90分以上的学生的情况;\n");
printf("现在,按照您的需要请按键:");
scanf("%d",&m);
if(m==1)find1();
if(m==2)find2();
if(m==3)find3();
}
main()
{
int i;
clrscr();
textcolor(YELLOW);
{
gotoxy(20,9);
printf("******欢迎使用学生成绩管理系统!******\n");
gotoxy(20,11);
printf("------------制作人:赵飞宇------------\n");
gotoxy(20,13);
printf("******欢迎注册:zfy0422@sina.com******\n");
gotoxy(20,15);
printf("***********飞宇软件开发公司***********\n");
gotoxy(20,17);
printf("版权所有 未经同意 不得复制 违者必究");
}
for(i=1;i<=44;i++)
{
{
gotoxy(16+i,19);
printf("#");
}
{
gotoxy(16+i,7);
printf("#");
}
}
for(i=1;i<=13;i++)
{
{
gotoxy(16,6+i);
printf("#");
}
{
gotoxy(61,6+i);
printf("#");
}
}
getch();
clrscr();
inputx();
clrscr();
gotoxy(3,3);
printf("\n学生成绩管理系统\n\n");
printf("一,输入成绩\n");
printf("请输入学生的成绩:\n" );
printf("学号 语文 数学 英语 物理 化学\n");
input();
printf("\n");
printf("二,输出成绩表\n");
printf("学号 语文 数学 英语 物理 化学 总分 均分 名次\n");
print1();
printf("\n");
printf("三,输出各科总分及平均分\n");
printf("语文 数学 英语 物理 化学\n");
print2();
printf("\n");
printf("四,查询\n");
find();
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
超市上半年营业额是360万,下半年比上半年多2
唐河县南阳幸运鹿绿色风尚休闲裤地址在什么地
地震英文是?
如果你看到一个和你似朋友还不似朋友的情人和
赤壁里加敏锐没加十一点就加一点暴击吗?和加
为什麽我的磁盘空间显示不正确
怎样删除在“我的电脑”中输入过的搜寻范围
有关于离子的半径比较
当阳市宜昌当阳市淯溪镇便民服务中心这个地址
为什么我家打DNF是花频的?
股票中的等比坐标是什么意思
睫毛第二次剪了还能长得像以前那么长吗?
在网上买东西都是要注意点什么啊
十字架与吸血鬼中驾驶巴士的人是什么身份?
机动车驾驶证年审怎么查询?可以告诉我网址吗
推荐资讯
谁知道《黑道学生与校花》全集下载地址?
三星伯爵手机不能拍照,怎么办
冥王圣衣珍藏卡多少级用
当痛一次一次的袭来,你如何能避免痛。心痛的
谁知道现在贵溪一般的MP3和MP4各要多少钱啊?
黄陂区武汉格力这个地址怎么能查询到,着急去
非常急,现在在重庆杨家坪哪儿好打车?
有没有任何电脑都能用的音乐文件
冷水滩区永州海燕图文广告地址是什么,有没有
同方T5150想升级,要花钱少,效果好
飞车前景,哪个能遮住等级,,要图!
为什么我的脖子睡觉后老是很疼
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?