0
点赞
收藏
分享

微信扫一扫

C语言实现学生成绩管理系统

效果如下:
C语言实现学生成绩管理系统_后端
代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct student{
int num;
char name[20];
float score1;
float score2;
float score3;
double total;
}stu[4];


void a();
void b();
void c();
void d();
void e();
int main(void)
{
//printf("Hello World!\n");


int n;
while(n!=6){

printf("\t student score manage system\n");
printf("1-input all student's score!\n");
printf("2-show all student's score!\n");
printf("3-output student's average score!\n");
printf("4-output student's score and rank!\n");
printf("5-result output txt file!\n");
printf("6-exit!\n");
scanf("%d",&n);
switch(n){
case 1:a();break;
case 2:b();break;
case 3:c();break;
case 4:d();break;
case 5:e();break;
case 6:printf("******ByeBye******");break;
}
}

return 0;
}

//输入成绩
void a(){
int i;
for(i=0;i<4;i++){
printf("input num name score1 score2 score3: ");
scanf("%d%s%f%f%f",&stu[i].num,stu[i].name,&stu[i].score1,&stu[i].score2,&stu[i].score3);
}

for(i=0;i<4;i++){
stu[i].total=stu[i].score1+stu[i].score2+stu[i].score3;
}
}
//输出成绩
void b(){
int i;
printf("num \t name \t score1 \t score2 \t score3 \t total \n");
for(i=0;i<4;i++){
printf("%d \t %s \t %f \t %f \t %f \t %f \n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].total);
}
}

//求平均成绩
void c(){

double total=0;
double avg;
int i;
for(i=0;i<4;i++){
total+=stu[i].total;
}
avg=total/4.0;
printf("avg is :%f \n",avg);
}

//按照总成绩排序
void d(){
struct student temp;
int i,j;
for(i=0;i<4;i++){

for(j=i+1;j<4;j++){
temp=stu[i];
stu[i]=stu[j];
stu[j]=temp;
}
}

printf("num \t name \t score1 \t score2 \t score3 \t total \n");
for(i=0;i<4;i++){
printf("%d \t %s \t %f \t %f \t %f \t %f \n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].total);
}
}

// 保存数据到文件
void e(){

int i;
FILE *fp;
fp=fopen("E:/result.txt","w");

fprintf(fp,"num \t name \t score1 \t score2 \t score3 \t total \n");

for(i=0;i<4;i++){
fprintf(fp,"%d \t %s \t %f \t %f \t %f \t %f \n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].total);

}

printf(" save success! \n ");
}


举报

相关推荐

0 条评论