找老乡
题目描述
新学期开始了,在学校勤学苦练的LeiQ有一天收到一个名单,上面有n个人的信息(姓名和地址),LeiQ知道有多少人是他的老乡以及老乡的名字
输入描述
多组输入,每组的第一行是一个整数 n n n( 1 ≤ n ≤ 100 1\leq n\leq 100 1≤n≤100),表示名单上人的数量。接下来一行有一个字符串表示LeiQ的地址( 1 ≤ l e n ≤ 20 1\leq len\leq 20 1≤len≤20)。接下来 n n n行,每行两个字符串,第一个是姓名,第二个是地址
输出描述
先输出老乡的名字(按照输入的顺序),最后输出老乡的人数。
样例
输入
4
Laiyang
Xiaoming Laiyang
Xiaohong Heze
Xiaohuang Laiwu
Xiaoguang Laiyang
输出
Xiaoming
Xiaoguang
2
来源
C语言实验9——字符串的应用
C语言实现
#include <stdio.h>
#include <string.h>
int main() {
int n, sum = 0;
scanf("%d",&n);
char laoxiang[21], a[21], b[21];
scanf("%s",laoxiang);
while (n--) {
scanf("%s %s",a,b);
if (strcmp(laoxiang,b)==0) {
printf("%s\n",a);
sum++;
}
}
printf("%d\n",sum);
return 0;
}
C++实现
#include <iostream>
using namespace std;
int main() {
int n, sum = 0;
cin >> n;
string laoxiang, a, b;
cin >> laoxiang;
while (n--) {
cin >> a >> b;
if (laoxiang == b) {
cout << a << endl;
sum++;
}
}
cout << sum << endl;
return 0;
}