三点 角度算法0 360 c语言,急!!!c语言编程求助

教学实践周到了,要求编一个学生成绩的管理系统。编了两天还没眉目,只好请教大神了!

题目:学生成绩的录入,包含学号,姓名,大学英语,物理,信号与信息系统,模电六个信息。要求:成绩的保存,输出,修改;能求单科平均成绩,学生个人平均成绩,总分的平均成绩。还要有排序功能(好像要按学生平均成绩排序,单科平均成绩排序)以下是我参考书上编的程序(编的乱七八糟,很多我都不知道对不对,参考一下我的要求,不一定用到)求大神重新给个完整版(我们只学了c语言,所以要求我们一定要用c来编)

#include

#include

#include

#include

#include

#define n 30

char num[n][10];

char name[n][12];

int yingyu[n];

int wuli[n];

int xinxi[n];

int modian[n];

int array[n]={0,1,2,3,4,5};

void input()

{

int a;

printf("请输入学生信息(学号,姓名,英语,物理,信号与信息系统,模电)");

for(a=0;a

{

gets(num[a]);

gets(name[a]);

scanf("%d",yingyu[a]);

scanf("%d",wuli[a]);

scanf("%d",xinxi[a]);

scanf("%d",modian[a]);

}

}

void output()

{

int a;

printf("学生成绩\n");

printf("-----------------------------------------------------------------------\n");

printf("  序号    学号       姓名   英语   物理   信号与信息系统   模电\n");

printf("-----------------------------------------------------------------------\n");

for(a=0;a

{

printf("%5d",a+1);

printf("%12s",num[a][0]);

printf("%10s",name[a][0]);

printf("%10d",yingyu[a]);

printf("%10d",wuli[a]);

printf("%10d",xinxi[a]);

printf("%10d",modian[a]);

printf("\n");

printf("--------------------------------------------------------------------\n");

printf("按任意键结束显示……\n");

}

}

double yingyuave(int*p)

{

int a,sum=0;

double ave;

for(a=0;a

sum+=p[a];

ave=sum/n;

return ave;

}

double wuliave(int*p)

{

int a,sum=0;

double ave;

for(a=0;a

sum+=p[a];

ave=sum/n;

return ave;

}

double xinxiave(int*p)

{

int a,sum=0;

double ave;

for(a=0;a

sum+=p[a];

ave=sum/n;

return ave;

}

double modianave(int*p)

{

int a,sum=0;

double ave;

for(a=0;a

sum+=p[a];

ave=sum/n;

return ave;

}

void studentave()

{

int a,sum=0;

double ave;

for(a=0;a

{

sum=yingyu[a]+wuli[a]+xinxi[a]+modian[a];

ave=sum/4;

printf("学号       姓名    个人平均成绩",num[a][0],name[a][0],ave);

}

}

double qbave()

{

int a,sum=0;

double ave;

for(a=0;a

sum+=yingyu[a]+wuli[a]+xinxi[a]+modian[a];

ave=sum/n;

return ave;

}

int selectsort(int compkey[],int m)

{

int i,j,k,temp=0;

for(i=0;i

{

k=0;

for(j=i+1;j

if(compkey[k]

k=j;

if(k!=i)

{

temp=array[k];

array[k]=array[i];

array[i]=temp;

}

}

return 0;

}

void coursemenu()

{

int a=1;

char input[10];

while(9!=a)

{

system("cls");

printf("*******************************\n");

printf("********成绩选择项菜单*********\n");

printf("*******************************\n");

printf("全班英语平均成绩--------------1\n");

printf("全班物理平均成绩--------------2\n");

printf("全班信号与信息系统平均成绩----3\n");

printf("全班模电平均成绩--------------4\n");

printf("学生本人平均成绩--------------5\n");

printf("全班总分平均成绩--------------6\n");

printf("返回上级菜单------------------9\n");

printf("*******************************\n");

printf("Enter Fun No.");

scanf("%s",input);

a=atoi(input);

switch(a)

{

case 1:

printf("全班英语平均成绩",yingyuave(yingyu));

getch();

break;

case 2:

printf("全班物理平均成绩",wuliave(wuli));

getch();

break;

case 3:

printf("全班信号与信息系统平均成绩",xinxiave(xinxi));

getch();

break;

case 4:

printf("全班模电平均成绩",modianave(modian));

getch();

break;

case 5:

printf("学生本人平均成绩",studentave());

getch();

break;

case 6:

printf("全班总分平均成绩",qbave());

getch();

break;

case 9:

printf("\n 返回\n");

a=9;

break;

default :

printf("输入错误,请再次输入!");

getch();

}

}

}

int main()

{

coursemenu();

return 0;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值