有5个学生,每个学生有3门课的成绩,从键盘输入以上的数据(包括学号,姓名,3门课的成绩),计算出平均成绩,将

有5个学生,每个学生有3门课的成绩,从键盘输入以上的数据(包括学号,姓名,3门课的成绩),计算出平均成绩,将原有数据和计算出的平均成绩存放在磁盘文件STUD中,要求磁盘文件STUD中的数据按平均成绩

float aver;};struct Student stud[SIZE],temp;int main(){void sort();int i;FILE *fp;sort();if ((fp=fopen("d:\\stud_sort.dat","rb"))==NULL){printf("文件不能打开\n\n");exit(0);}printf("排序后的学生成绩如下:\n");printf("----------------------------------------------------\n");printf("学号 姓名 数学 英语 编程 平均分 \n");printf("----------------------------------------------------\n");for (i=0;i<SIZE;i++){fread(&stud[i],sizeof(struct Student),1,fp);printf("%u\t%s\t%.1f\t%.1f\t%.1f\t%.1f\n",stud[i].id,stud[i].name,stud[i].math,stud[i].English,stud[i].program,stud[i].aver);}printf("\n");fclose(fp);return 0;}void sort(){FILE *fp1,*fp2;int i,j;if ((fp1=fopen("d:\\stud.dat","rb"))==NULL){printf("文件不能打开\n\n");exit(0);}if ((fp2=fopen("d:\\stud_sort.dat","wb"))==NULL){printf("文件写入时出错\n");exit(0);}for (i=0;i<SIZE;i++)if (fread(&stud[i],sizeof(struct Student),1,fp1)!=1){printf("文件读取时出错\n");exit(0);}for (i=0;i<SIZE;i++){for (j=i+1;j<SIZE;j++)if (stud[i].aver<stud[j].aver){temp=stud[i];stud[i]=stud[j];
温馨提示:内容为网友见解,仅供参考
无其他回答

有5个学生,每个学生有3门课的成绩,从键盘输入以上的数据(包括学号,姓名...
printf("学号:%d\\n姓名:%s\\n三门课成绩:%5.1f%5.1f%5.1f\\n",stu.num,stu.name,stu.score[0],stu.score[1],stu.score[2]);} 不谢

有五个学生,每个学生有三门课的成绩,从键盘上输入学生的学号,姓名...
class Test50 { public static void main(String[] args) { Scanner sc = new Scanner(System.in);\/\/定义学生类数组,里面存放五个学生的信息 Student[] stus = new Student[5];System.out.println("请输入5个学生的信息:");for(int i=0;i<stus.length;i++){ String str = sc.nextLine(...

有五个学生,每个学生的数据包括学号,姓名,三门课的成绩,从键盘输入五...
改成printf("%3d%3d",(p1+m)->num,(p1+m)->name);即把*( )去掉

...1) 有5个学生,每个学生的数据包括学号、姓名、3门课的成绩_百度知...
void input(STU *stu, int num) \/\/stu为学生数组的首地址,num为数组长度 { int i ;printf("请输入%d个学生的基本情况: \\n",num) ;printf("姓名 学号 成绩一 成绩二 成绩三\\n") ;for(i=0; i<num; i++){ scanf("%s%s%f%f%f",&stu[i].name,&stu[i].stunum,&stu[i].score1...

...的数据包括学号、姓名、三门课的成绩,从键盘输入5个学生数据,要求输 ...
}void print(struct Student stu){ printf("\\n成绩最高的学生是:\\n"); printf("学号:%d\\n姓名:%d\\n三门课成绩:%5.1f%5.1f%5.1f\\n平均成绩:%6.2f\\n",stu.num,stu.name,stu.score[0],stu.score[1],stu.score[2]);}出来一堆错。。。谁知道怎么回事啊。。。多谢大家帮忙! 展开 ...

从键盘输入5个学生信息(学号姓名三门课的成绩),输出三门课的总平均成 ...
但是不得不说你的程序要求的那些实在没有实际意义。首先,三门成绩的总和还是每个学生都求一下的好,你求的是全部学生的全部成绩然后除15(这个15是不是因为你的学生数组定义了5的容量?);其次,最高分的话,按照每门课来统计比较好吧,你是在全部学生的全部课程中找一个最高分。

...的数据包括学号、姓名、3门课的成绩,从键盘输入5个学生数据_百度知 ...
include<stdio.h> define max 5 \/*设定要输入成绩的学生个数*\/ double zpj; \/*总平均值*\/ struct student \/*结构体*\/ { int num;char name[10];int score1;int score2;int score3;double pj;};struct student stu[max],temp;void Input() \/*输入函数*\/ { int i;for(i...

...从键盘输入5名学生的学号、姓名以及3门课成绩,计算每名同学的总分...
第一空:scanf("%d %s",&stu[i].num,stu[i].name);第二空:scanf("%f",&stu[i].sco[j]);第三空:stu[i].sum+=stu[i].sco[j];

有5个学生,每个学生的数据包括学号、班级、姓名、三门课成绩。
学校收到后,会发给我们在线测试的考试号。之后学生来我们办公室参加测试。测试机会只有1次,涵盖听力、写作、阅读、口语四方面,时间约为2.5个小时。Ø 测试后,由我们通知学校学生已经完成测试,学校可根据考试结果在3个工作日内出具语言通知书。Ø学生入学报到时,学校会再进行一次考试来检查...

...每人3门成绩,要求键盘输入学生数据(学号,姓名,成绩),求平均成绩...
include <stdio.h> include <stdlib.h> include <iostream> using namespace std;define N 5 struct student { int num;char name[10];int score[3];int aver;}stu[N];void main(){ int i,j,sum;for(i=0;i<N;i++){ sum=0;cout<<"input the original grade of student:"<<i<<...

相似回答