注意: C语言的字符串是字符数组,数组不能用另一个数组赋值,故对于char数组必须用strcpy,c++的string类型可以直接赋值
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main() {
char name[5],max_name[5],min_name[5];
int year, month, day;
int n,cnt=0;
int maxage = 20140907, minage = 18140905;
cin >> n;
for (int i = 0; i < n; i++) {
scanf("%s %d/%d/%d", name, &year, &month, &day);
int x = year * 10000 + month * 100 + day;
if (18140905 < x && x < 20140907) {
cnt++;
if (x < maxage) { //求最小年龄
maxage = x;
strcpy(max_name, name);
}
if (x > minage) {
minage = x;
strcpy(min_name, name);
}
}
}
cout << cnt <<" " << max_name<<" " << min_name;
return 0;
}