#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
struct student{
char id[100];////注意这里用字符串数组,是为了方便用strcmp函数
char name[100];
char sex[5];
int age;
bool operator < (const student &b)const{
return strcmp(id,b.id)<0;
}
}buf[1000];
int main(){
int n;
int i;
while(scanf("%d",&n)!=EOF){
for(i=0;i<n;i++){
scanf("%s%s%s%d",buf[i].id,buf[i].name,buf[i].sex,&buf[i].age);
// printf("\n");
}
sort(buf,buf+n);
int m;
scanf("%d",&m);
//while(scanf("%d",&m)!=EOF){
while(m--!=0){//////注意这里不能再想写n那样写EOF
char x[100];////同时注意此处不是定义成string 类型,string 类型在<String>类中
scanf("%s",x);
//printf("\n");
int ans=-1;
int low=0,high=n-1;
while(low<=high){
int mid=(low+high)/2;
int tmp=strcmp(x,buf[mid].id);
if(tmp==0){
//printf("%s%s%s%d\n",buf[i].id,buf[i].name,buf[i].sex,buf[i].age);
ans=mid;
break;////我一直把这个忘了
}
else if(tmp<0)
high=mid-1;
else
low=mid+1;
}
if(ans==-1)
printf("NO Answer!\n");
else
printf("%s %s %s %d",buf[ans].id,buf[ans].name,buf[ans].sex,buf[ans].age);///
}
}
return 0;
}
中科大2006-2014年计算机复试机试题
需积分: 15 116 浏览量
2014-09-12
13:18:45
上传
评论 2
收藏 133KB RAR 举报
知之可否
- 粉丝: 284
- 资源: 10
最新资源
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- 文件批量改名神器10.0一款简单易用的批量文件重命名工具(已注册PRO版本).rar
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈