pat-考试座位号
2016-06-27 23:03
183 查看
欢 [编辑资料] [登出]主页
双击代码区域可以查看未格式化的原始代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | #include <stdio.h> #include <stdlib.h> #include <string.h> /**每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。 输入格式: 输入第一行给出一个正整数N(<=1000),随后N行,每行给出一个考生的信息:“准考证号 试机座位号 考试座位号”。其中准考证号由14位数字组成,座位从1到N编号。输入保证每个人的准考证号都不同,并且任何时候都不会把两个人分配到同一个座位上。 考生信息之后,给出一个正整数M(<=N),随后一行中给出M个待查询的试机座位号码,以空格分隔。 输出格式: 对应每个需要查询的试机座位号码,在一行中输出对应考生的准考证号和考试座位号码,中间用1个空格分隔。 输入样例: 4 10120150912233 2 4 10120150912119 4 1 10120150912126 1 3 10120150912002 3 2 2 3 4 输出样例: 10120150912002 2 10120150912119 1**/ struct number { char a[15]; int x; int y; /**这里需要注意,num[i]利用结构可以来调动x,y,不一定要int (整数)**/ }num[100001];/**这个num的数组的容量一定要大些,不然会数组越界,从而出现段错误**/ int main() { int t; scanf("%d",&t); ///number num[t]; int i; for(i=0; i<t; i++) { scanf("%s%d%d",num[i].a,&num[i].x,&num[i].y); } int m; int j; scanf("%d",&m); int n; while(m--)/**这里的m--就是为了输入下面的的n,不必用for循环**/ { scanf("%d",&n); for(j=0; j<t; j++)/**这里j<t是为了n可以在整个num里面寻找与n相等的数字,误区就是把t改成m,这样的话就会不能浏览完num里面的所有的值**/ { if(num[j].x==n){ printf("%s %d\n",num[j].a,num[j].y);/***满足条件,即可以输出这个值*/ } } } return 0; } 小白一个,请大神们指教,有更好的方法请大神们的指教,本人刚刚写博客不久,欢迎大家来指教 |
相关文章推荐
- redhat 5 系列 diy mini linux 之一
- java开发环境设置
- Json
- 排序算法系列---希尔排序(C++)
- 9、过滤器和监听器
- linux c 获取系统时间
- php鼠标滚动加载
- 344. Reverse String
- CronTrigger
- 苹果搜索广告后台大揭秘,最全最细致详解,手把手设置教程「后附官方视频」-b
- 网页实现返回键直接退出,不回到登录界面
- 远程连接SQL Server 2008,服务器端和客户端配置
- Android-ViewFlipper子界面自动轮播-学习笔记
- CentOS7中安装Mysql
- 破解Paralles Desktop
- 第二章 java基础(用户自定义类型)
- JS正则表达式
- LR 4000 U-最少使用页面置换算法
- 第二章 java基础(二进制补码)
- JDK、JRE、JVM三者间的关系