编程,由键盘输入10位学生的基本信息(包括学号,姓名,成绩),根据成绩,设置成绩等级(等级设置:85---100为A,70---84为B,60---69为C,0---59为D.),输出每一位学生的学号及成绩等级以及不及格人数,并将学生的学号,姓名,成绩等级写到文本文件file1.txt中.要求定义和调用函数f(),根据学生成绩设置其等级,并返回所统计的不及格人数.请在程序中添加必要的注释
#include <stdio.h>
#define N 10
typedef struct student {
unsigned id; // 学号
char name[30]; // 姓名
int score; // 分数
char rating; // 等级
}student;
int f(student a[],int n) {
int i,nopass = 0;
for(i = 0; i < n; ++i) {
if(a[i].score >= 85) a[i].rating = 'A';
else if(a[i].score >= 70) a[i].rating = 'B';
else if(a[i].score >= 60) a[i].rating = 'C';
else {
a[i].rating = 'D';
++nopass;
}
}
return nopass;
}
int main() {
student a[N];
int i,nopass;
FILE *fin;
printf("请输入%d名学生的信息:学号 姓名 成绩\n",N);
for(i = 0; i < N; ++i) {
scanf("%u",&a[i].id);
scanf("%s",a[i].name);
scanf("%d",&a[i].score);
}
if((fin = fopen("file1.txt","wb")) == NULL) {
printf("文件打开操作失败!\n");
return 1;
}
nopass = f(a,N);
for(i = 0; i < N; ++i) {
fwrite(&a[i],sizeof(student),1,fin);
printf("学号:%u\n",a[i].id);
printf("姓名:%s\n",a[i].name);
printf("成绩:%d\n",a[i].score);
printf("等级:%c\n\n",a[i].rating);
}
fwrite(&nopass,sizeof(int),1,fin);
fclose(fin);
return 0;
}
#define N 10
typedef struct student {
unsigned id; // 学号
char name[30]; // 姓名
int score; // 分数
char rating; // 等级
}student;
int f(student a[],int n) {
int i,nopass = 0;
for(i = 0; i < n; ++i) {
if(a[i].score >= 85) a[i].rating = 'A';
else if(a[i].score >= 70) a[i].rating = 'B';
else if(a[i].score >= 60) a[i].rating = 'C';
else {
a[i].rating = 'D';
++nopass;
}
}
return nopass;
}
int main() {
student a[N];
int i,nopass;
FILE *fin;
printf("请输入%d名学生的信息:学号 姓名 成绩\n",N);
for(i = 0; i < N; ++i) {
scanf("%u",&a[i].id);
scanf("%s",a[i].name);
scanf("%d",&a[i].score);
}
if((fin = fopen("file1.txt","wb")) == NULL) {
printf("文件打开操作失败!\n");
return 1;
}
nopass = f(a,N);
for(i = 0; i < N; ++i) {
fwrite(&a[i],sizeof(student),1,fin);
printf("学号:%u\n",a[i].id);
printf("姓名:%s\n",a[i].name);
printf("成绩:%d\n",a[i].score);
printf("等级:%c\n\n",a[i].rating);
}
fwrite(&nopass,sizeof(int),1,fin);
fclose(fin);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2014-12-29
可以看下c 语言课本。。后面的例子有类似的