结构体F 选夫婿1
2017-10-02 21:01
218 查看
输入数据的第一行是一个正整数N(0 < N < 1000)。然后N行数据,每行包含三部分,用空格隔开。第一部分是报名者的姓名name(长度小于20的字符串),然后是整数身高h(0 < h < 300),第三部分是整数体重w (0 < w < 200)。
最后一行是四个整数a,b,c,d.表示身高的合格范围是[a,b],体重的合格范围是[c,d](0 < a < b < 200, 0 < c < d < 300)。
Output
你需要把合格的男生信息按照身高从低到高输出,格式跟输入一样,也是每行三个信息,共N行,如果身高相同则按体重从轻到重输出,若没有合格人选则输出No,具体格式见样例。
Example Input
8
武大郎 70 40
西门庆 180 70
李逵 160 150
燕青 175 69
鲁智深 180 100
武松 180 75
小泉纯一狼 30 20
孙二娘 169 60
165 190 60 90
Example Output
孙二娘 169 60
燕青 175 69
西门庆 180 70
武松 180 75
最后一行是四个整数a,b,c,d.表示身高的合格范围是[a,b],体重的合格范围是[c,d](0 < a < b < 200, 0 < c < d < 300)。
Output
你需要把合格的男生信息按照身高从低到高输出,格式跟输入一样,也是每行三个信息,共N行,如果身高相同则按体重从轻到重输出,若没有合格人选则输出No,具体格式见样例。
Example Input
8
武大郎 70 40
西门庆 180 70
李逵 160 150
燕青 175 69
鲁智深 180 100
武松 180 75
小泉纯一狼 30 20
孙二娘 169 60
165 190 60 90
Example Output
孙二娘 169 60
燕青 175 69
西门庆 180 70
武松 180 75
#include <stdio.h> struct select { char name[25]; int h; int w; }a[110],b; int main() { int n,i,j,p,q,r,s,flag=0; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%s %d %d",&a[i].name,&a[i].h,&a[i].w); } scanf("%d %d %d %d",&p,&q,&r,&s); for(i=0;i<n-1;i++) { for(j=0;j<n-i-1;j++) { if(a[j].h>a[j+1].h) { b=a[j]; //整体交换 a[j]=a[j+1]; a[j+1]=b; } else if(a[j].h==a[j+1].h) { if(a[j].w>a[j+1].w) { b=a[j]; a[j]=a[j+1]; a[j+1]=b; } } } } for(i=0;i<n;i++) { if(a[i].h>=p&&a[i].h<=q&&a[i].w>=r&&a[i].w<=s) { printf("%s %d %d\n",a[i].name,a[i].h,a[i].w); flag=1; } } if(flag==0) { printf("No"); } return 0; }
相关文章推荐
- 选夫婿1 结构体
- 结构体、共用体和枚举之选夫婿1
- 选夫婿1(结构体)
- 结构体———选夫婿1
- 选夫婿2 (结构体)
- SDUT_2015寒假集训_结构体练习_B-选夫婿1
- ACM-选夫婿(结构体排序练习)
- C语言 结构体 选夫婿1
- Linux字符设备中的两个重要结构体(file、inode)
- 郁闷了!写socket时,无法将结构体转换成char*发送
- 含位域结构体的sizeof
- 第十六周-1复数结构体
- 由C/C++中的结构体包含数组引申到C/C++堆栈
- 结构体 变迁
- 第16周oj训练——结构体--学生信息排序(2878)
- C与C++中结构体的比较
- Foundation框架—结构体
- 结构体——根据学号排序
- 判断结构体中某成员的位置
- 3-04. 一元多项式的乘法与加法运算(20)(ZJU_PAT 结构体)