1004 成绩排名

简介: 1004 成绩排名

题目描述

1004 成绩排名题目描述

解题思路

自定义结构体类型,成员包括姓名,学号,成绩。

对于姓名和学号是字符串,注意有\0,数组大小最小为11

我们分别用a,b表示最低成绩的下标,最高成绩的下标。用min,max分别表示最小成绩和最大成绩。

循环进行比较找出最低成绩的下标与最高成绩的下标。最后输出即可。

具体实现看下面的代码:

代码实现

#include <stdio.h>
#include <stdlib.h>
typedef struct studet
{
  char name[11];
  char id[11];
  int grade;
}stu;
int main()
{
  int n;
  scanf("%d", &n);
  stu* people = (stu*)malloc(n * sizeof(stu));
  int i = 0;
  int a = 0, b = 0, min = 0, max = 0;
  for (i = 0; i < n; i++)
  {
    scanf("%s%s%d", (people+i)->name, (people + i)->id, &(people + i)->grade);
    if (i == 0)//预设第一个人的成绩既是最大也是最小的
    {
      min = (people + i)->grade;
      max = (people + i)->grade;
    }
    //进行比较,找出最低成绩的下标与最高成绩的下标
    if ((people + i)->grade < min)
    {
      min = (people + i)->grade;
      a = i;
    }
    if ((people + i)->grade > max)
    {
      max = (people + i)->grade;
      b = i;
    }
  }
  //输出
  printf("%s %s\n", (people + b)->name, (people + b)->id);
  printf("%s %s\n", (people + a)->name, (people + a)->id);
  return 0;
}

相关文章
|
8月前
|
C++
C++期末考试注意点2
C++期末考试注意点2
47 1
|
8月前
NYOJ-757-期末考试
NYOJ-757-期末考试
31 0
|
8月前
|
存储
【错题集-编程题】组队竞赛(排序 + 贪心)
【错题集-编程题】组队竞赛(排序 + 贪心)
|
8月前
|
C++
C++期末考试注意点
C++期末考试注意点
34 0
|
测试技术
PTA 1004 成绩排名
读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。
104 0
男生用什么护肤品比较好?这样护肤让你秒变男神
男生用什么护肤品比较好?上述就是我个人日常所用到的护肤品了,集控油,补水,抗初老一体话,用起来还是很方便的,洁面后用水,然后在用眼霜,接着是精华,最后是面霜
228 0
男生用什么护肤品比较好?这样护肤让你秒变男神
|
存储 算法 容器
天梯赛二阶题——L2-015 互评成绩(25 分)
学生互评作业的简单规则是这样定的:每个人的作业会被k个同学评审,得到k个成绩。系统需要去掉一个最高分和一个最低分,将剩下的分数取平均,就得到这个学生的最后成绩。本题就要求你编写这个互评系统的算分模块。
374 0
天梯赛二阶题——L2-015 互评成绩(25 分)
|
测试技术 C语言 C++
1004 成绩排名 (20 分)
读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。
252 0