问题 C: 查找学生信息
Posted csuzhhj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了问题 C: 查找学生信息相关的知识,希望对你有一定的参考价值。
问题 C: 查找学生信息
时间限制: 1 Sec 内存限制: 32 MB献花: 242 解决: 92
[献花][花圈][TK题库]
题目描述
输入N个学生的信息,然后进行查询。
输入
输入的第一行为N,即学生的个数(N<=1000)
输出
输出M行,每行包括一个对应于查询的学生的信息。
样例输入
5
001 张三 男 19
002 李四 男 20
003 王五 男 18
004 赵六 女 17
005 刘七 女 21
7
003
002
005
004
003
001
006
样例输出
003 王五 男 18
002 李四 男 20
005 刘七 女 21
004 赵六 女 17
003 王五 男 18
001 张三 男 19
No Answer!
参考代码:
#include<string >
#include<vector>
#include<iostream>
using namespace std;
struct student{ //使用结构体
string id;
string name;
string sex;
int age;
};
int main(){
int n=0,m=0;
while(cin>>n){
vector<student> stu(n); //定义结构体student为长度n的数组stu,>后加上空格,否则编译错误
for(int i=0;i<n;i++){ //遍历输入n组数据
cin>>stu[i].id>>stu[i].name>>stu[i].sex>>stu[i].age;
}
cin>>m;
for(int i=0;i<m;i++){ //输入m组数,每一组数与结构体stu[j].id比对,用到了for的嵌套循环
int flag=0; //一个标记,用来判断是否比对成功,若成功赋值为1
string num;
cin>>num;
for(int j=0;j<n;j++){
if(num==stu[j].id){
cout<<stu[j].id<<" "<<stu[j].name<<" "<<stu[j].sex<<" "<<stu[j].age<<" "<<endl;
flag=1;
}
}
if(flag==0){
cout<<"No Answer!"<<endl;
}
}
}
return 0;
}
以上是关于问题 C: 查找学生信息的主要内容,如果未能解决你的问题,请参考以下文章