题目描述
在某网站收集了n个人的注册账号,账号类型有身份证号或者QQ号两种。请编程用适当的数据结构保存信息,并统计身份证中男性和女性的人数,以及QQ账号的平均值(取整)。
提示:身份证号码中倒数第2位若为奇数则表示男性,若为偶数则表示女性。
输入
第1行,一个正整数n , 1 <= n <=10000
下面n行,每行一个字符和一个字符串。第一个字符表示账号类型,有i、q两种,第2个字符串是账号信息
输出
一行3个整数,分别表示男性人数、女性人数、QQ平均值
样例输入
6 i 522633200009118006 i 51170219990111195X i 45102119800321935X q 20081011 q 17254862 i 511702196505046283
样例输出
2 2 18667936
#include<stdio.h>
#include<string.h>
struct stu{
char typ[5];
char number[20];
};
int main(){
struct stu s[10000];
int i,n,len,female=0,male=0,sum_q,ave_q,k=0;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%s%s",&s[i].typ,&s[i].number);
if(s[i].typ[0]=='i'){
len=strlen(s[i].number);
if(s[i].number[len-2]%2==0)female++;
else male++;
}
else{
sum_q=sum_q+atoi(s[i].number);
k++;
}
}
ave_q=sum_q/k;
printf("%d %d %d",male,female,ave_q);
return 0;
}