查找学生信息
题目描述
输入N个学生的信息,然后进行查询。
输入描述:
输入的第一行为N,即学生的个数(N<=1000) 接下来的N行包括N个学生的信息,信息格式如下: 01 李江 男 21 02 刘唐 男 23 03 张军 男 19 04 王娜 女 19 然后输入一个M(M<=10000),接下来会有M行,代表M次查询,每行输入一个学号,格式如下: 02 03 01 04
输出描述:
输出M行,每行包括一个对应于查询的学生的信息。 如果没有对应的学生信息,则输出“No Answer!”
示例1
输出
复制02 刘唐 男 23 03 张军 男 19 01 李江 男 21 04 王娜 女 19 03 张军 男 19
代码:
#include <iostream> #include<vector> #include <string> using namespace std; struct student { string id; char name[10]; string gender; int year; }; int main() { int N; cin >> N; vector<student> stu; stu.resize(N); for (int i=0; i < N;i++) { cin >> stu[i].id >> stu[i].name >> stu[i].gender >> stu[i].year; } int M; cin >> M; vector<string> input; input.resize(M); for (int i = 0; i < M; i++) { cin >> input[i]; } for (int i = 0; i < M; i++) { int flag = 0; for (int j = 0; j < N; j++) { flag++; if ((input[i]) == (stu[j].id)) { cout << stu[j].id << " " << stu[j].name << " " << stu[j].gender << " " << stu[j].year << endl; break; } if (flag==N) { cout << "No Answer!"<<endl; } } } system("pause"); return 0; }