博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
A1083 List Grades (25)(25 分)
阅读量:5291 次
发布时间:2019-06-14

本文共 2230 字,大约阅读时间需要 7 分钟。

A1083 List Grades (25)(25 分)

Given a list of N student records with name, ID and grade. You are supposed to sort the records with respect to the grade in non-increasing order, and output those student records of which the grades are in a given interval.

Input Specification:

Each input file contains one test case. Each case is given in the following format:

Nname[1] ID[1] grade[1]name[2] ID[2] grade[2]... ...name[N] ID[N] grade[N]grade1 grade2

where name[i] and ID[i] are strings of no more than 10 characters with no space, grade[i] is an integer in [0, 100], grade1 and grade2 are the boundaries of the grade's interval. It is guaranteed that all the grades are distinct.

Output Specification:

For each test case you should output the student records of which the grades are in the given interval [grade1, grade2] and are in non-increasing order. Each student record occupies a line with the student's name and ID, separated by one space. If there is no student's grade in that interval, output "NONE" instead.

Sample Input 1:

4Tom CS000001 59Joe Math990112 89Mike CS991301 100Mary EE990830 9560 100

Sample Output 1:

Mike CS991301Mary EE990830Joe Math990112

Sample Input 2:

2Jean AA980920 60Ann CS01 8090 95

Sample Output 2:

NONE

AC代码

#include 
#include
#include
#include
#define maxn 50struct Student { char name[11]; char id[11]; int grade;}stu[maxn];int cmp(const void*a, const void*b) {// struct Student*aa=(Student*)a;// struct Student*bb=(Student*)b; struct Student*aa=a; struct Student*bb=b; return aa->grade < bb->grade ? 1:-1;//为实现成绩降序,c++ 是>,c语言则是<,1<2返回正值,1==2返回0,1>2,返回负值 }int main() { int n, left, right; scanf("%d", &n); for(int i = 0; i < n; i++) { scanf("%s %s %d", stu[i].name, stu[i].id, &stu[i].grade); } scanf("%d%d", &left, &right); qsort(stu,n,sizeof(stu[0]), cmp); bool flag = false; for(int i = 0; i < n; i++) { if(stu[i].grade >= left && stu[i].grade <= right) { printf("%s %s\n", stu[i].name, stu[i].id); flag = true; } } if(flag == false) { printf("NONE\n"); } return 0;}

转载于:https://www.cnblogs.com/lingr7/p/9492040.html

你可能感兴趣的文章
《Akka应用模式:分布式应用程序设计实践指南》读书笔记8
查看>>
jQuery垂直滑动切换焦点图
查看>>
Python-S9-Day127-Scrapy爬虫框架2
查看>>
模运算
查看>>
python多线程的使用
查看>>
团队编程项目作业1-成员简介及分工
查看>>
使用Chrome(PC)调试移动设备上的网页
查看>>
UI基础--手写代码实现汤姆猫动画
查看>>
NSDictionary的几种遍历方法
查看>>
Java源码解析(附录)(5) —— WildcardType
查看>>
内核映像的形成 —— KBuild体系
查看>>
Python+pytesseract+Tesseract-OCR图片文字识别(只适合新手)
查看>>
使用gitbash来链接mysql
查看>>
docker镜像管理基础
查看>>
黑盒测试和百合测试的优缺点对比
查看>>
SecureCRT的使用方法和技巧(详细使用教程)
查看>>
装饰者模式
查看>>
C++二进制文件中读写bitset
查看>>
右侧导航栏(动态添加数据到list)
查看>>
用Nginx+Lua(OpenResty)开发高性能Web应用
查看>>