用C语言编写一个程序,输入N个学生的学号和成绩,求平均成绩,并输出其中最高分和最低分学生学号和成绩 100
3个回答
展开全部
#include<stdio.h>
#define N 5
struct Stu{
int id;
double score;
};
void sortScore(Stu s[N]){
int i;
int min=0,max=0;
for(i=1;i<N;i++){
if(s[i].score>s[max].score) max=i;
if(s[i].score<s[min].score) min=i;
}
printf("%d %.2lf\n",s[max].id,s[max].score);
printf("%d %.2lf\n",s[min].id,s[min].score);
}
int main(){
Stu s[N];
int i;
double ans=0;
for(i=0;i<N;i++){
scanf("%d%lf",&s[i].id,&s[i].score);
ans+=s[i].score;
}
printf("%.2lf\n",ans/N);
sortScore(s);
}
追问
要做到任意输入,不能用宏定义,能再帮忙改下吗
追答
#include<stdio.h>
struct Stu{
int id;
double score;
};
void sortScore(Stu s[],int n){
int i;
int min=0,max=0;
for(i=1;i<n;i++){
if(s[i].score>s[max].score) max=i;
if(s[i].score<s[min].score) min=i;
}
printf("%d %.2lf\n",s[max].id,s[max].score);
printf("%d %.2lf\n",s[min].id,s[min].score);
}
int main(){
int n;
scanf("%d",&n);
Stu s[n];
int i;
double ans=0;
for(i=0;i<n;i++){
scanf("%d%lf",&s[i].id,&s[i].score);
ans+=s[i].score;
}
printf("%.2lf\n",ans/N);
sortScore(s,n);
}
展开全部
#include<stdio.h>
#define N 5
struct Stu{
int id
#define N 5
struct Stu{
int id
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#define N 5struct Stu{ int id; double score;};void sortScore(Stu s[N]){ int i; int min=0,max=0; for(i=1;i<N;i++){ if(s[i].score>s[max].score)
#define N 5struct Stu{ int id; double score;};void sortScore(Stu s[N]){ int i; int min=0,max=0; for(i=1;i<N;i++){ if(s[i].score>s[max].score)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |