7-1 学生成绩排序

简介: 7-1 学生成绩排序

7-1 学生成绩排序


分数 12


全屏浏览


切换布局


作者 张泳


单位 浙大城市学院


假设学生的基本信息包括学号、姓名、三门课程成绩以及个人平均成绩,定义一个能够表示学生信息的结构类型。输入n(n<50)个学生的成绩信息,按照学生的个人平均分从高到低输出他们的信息。如果平均分相同,按输入的先后顺序排列。


输入格式:

输入一个正整数n(n<50),下面n行输入n个学生的信息,包括:学号、姓名、三门课程成绩(整数)。


输出格式:

输出从高到低排序后的学生信息,包括:学号、姓名、平均分(保留两位小数)。


输入样例:

1. 3
2. 101 Zhang 78 87 85
3. 102 Wang 91 88 90
4. 103 Li 75 90 84

输出样例:

1. 102,Wang,89.67
2. 101,Zhang,83.33
3. 103,Li,83.00


代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

#include <stdio.h>
#include <string.h>
struct node
{
 int id;
 int f1;
 int f2;
 int f3;
 double f;
 char name[50];
}a[50],t;
int main()
{
 int n,i,j;
 scanf("%d",&n);
 for(i=0;i<n;i++)
 {
  scanf("%d %s %d %d %d",&a[i].id,a[i].name,&a[i].f1,&a[i].f2,&a[i].f3);
  double sum=0;
  sum+=a[i].f1+a[i].f2+a[i].f3;
  a[i].f=sum/3.0;
 }
 for(i=0;i<n-1;i++)
 {for(j=0;j<n-1-i;j++)
 {
  if(a[j].f<a[j+1].f)
  {
   t=a[j];
   a[j]=a[j+1];//max
   a[j+1]=t;
  }
 }
  
  }
 for(i=0;i<n;i++)
 {
  printf("%d,%s,%.2f\n",a[i].id,a[i].name,a[i].f);
 }
 return 0;
}
目录
相关文章
|
BI
7-6 sdut-C语言实验-最长上升子序列
7-6 sdut-C语言实验-最长上升子序列
249 1
|
XML 编译器 Android开发
Kotlin DSL 实战:像 Compose 一样写代码
Kotlin DSL 实战:像 Compose 一样写代码
480 0
7-5 sdut-C语言实验-最长公共子序列
7-5 sdut-C语言实验-最长公共子序列
286 0
|
BI
7-7 sdut-C语言实验-上升子序列
7-7 sdut-C语言实验-上升子序列
183 0
|
BI
7-6 sdut-C语言实验-最长上升子序列的和
7-6 sdut-C语言实验-最长上升子序列的和
151 2
|
11月前
|
机器学习/深度学习 数据挖掘 定位技术
多元线性回归:机器学习中的经典模型探讨
多元线性回归是统计学和机器学习中广泛应用的回归分析方法,通过分析多个自变量与因变量之间的关系,帮助理解和预测数据行为。本文深入探讨其理论背景、数学原理、模型构建及实际应用,涵盖房价预测、销售预测和医疗研究等领域。文章还讨论了多重共线性、过拟合等挑战,并展望了未来发展方向,如模型压缩与高效推理、跨模态学习和自监督学习。通过理解这些内容,读者可以更好地运用多元线性回归解决实际问题。
1402 0
|
文字识别
入职必会-开发环境搭建09-屏幕截图软件-PixPin下载和安装
PixPin是一款功能强大使用简单的截图/贴图工具,帮助你提高效率,包含截图、贴图、长截图、文字识别、标注、GIF动图等功能。
783 1
7-4 sdut-C语言实验-区间覆盖问题
7-4 sdut-C语言实验-区间覆盖问题
187 2
|
存储
6-2 sdut-C语言实验-逆序建立单链表
6-2 sdut-C语言实验-逆序建立单链表
140 1

热门文章

最新文章