C 语言练习范例 100
题目
有 五 个学生,每个学生有 3 门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,然后将学生的成绩和和计算出的平均分数存放在磁盘文件 student
中。
每行格式如下
学生号 学生姓名 课程A成绩 课程B成绩 课程C成绩 平均分
程序分析
无
程序代码
/** * file: main.c * author: 简单教程(www.twle.cn) * * Copyright © 2015-2065 www.twle.cn. All rights reserved. */ #include<stdio.h> #include<stdlib.h> typedef struct{ int ID; int math; int English; int C; int avargrade; char name[20]; }Stu; int main() { FILE*fp; Stu stu[5]; int i,avargrade=0; printf("请输入5个同学的信息:学生号,姓名,3门成绩:\n"); for(i=0;i<5;i++) { scanf("%d %s %d %d %d",&(stu[i].ID),stu[i].name,&(stu[i].math),&(stu[i].English),&(stu[i].C)); stu[i].avargrade=(stu[i].math+stu[i].English+stu[i].C)/3; } if((fp=fopen("student","w"))==NULL) { printf("error :cannot open file!\n"); exit(0); } for(i=0;i<5;i++) fprintf(fp,"%d %s %d %d %d %d\n",stu[i].ID,stu[i].name,stu[i].math,stu[i].English, stu[i].C,stu[i].avargrade); fclose(fp); // system("pause"); return 0; }
运行结果
运行以上代码,输出结果为
请输入5个同学的信息:学生号,姓名,3门成绩: 1 a 60 70 80 2 b 60 80 90 3 c 59 39 89 4 e 56 88 98 5 d 43 88 78
打开 student
文件,内容如下
1 a 60 70 80 70 2 b 60 80 90 76 3 c 59 39 89 62 4 e 56 88 98 80 5 d 43 88 78 69