我国使用的手机号码为11位,其中各段有不同的编码方向:前3位是网络识别号;第4-7位为地区编码;第8-11位表示用户号码。
本题要求你实现一个程序,自动统计指定地区编码的手机号码的个数。
输入格式:
输入第一行为待查询的地区编码,随后每行都是11位数字组成的手机号码,当读到某一行只有一个英文句点 . 时,输入结束。
输出格式:
首先在第一行中输出手机号码的总个数。然后统计指定地区编码的手机号码有多少个。第二行首先输出第一次出现该地区编码的手机号码是第几个(从 1 开始计数,没有输出0),然后输出该地区编码手机号码的总个数(没有输出0),其间以一个空格分隔。题目保证输出的所有数字不超过10的九次方。
输入样例:
0549
13563910168
13505490199
18853905089
13705390115
.
输出样例:
4
2 1
#include<stdio.h>
int main()
{
char a[100000][11];
char code[4];
int i,j,t,flag=0,M=0;
for(i=0;i<4;i++)
scanf("%1c",&code[i]);
getchar();
for(i=0;i<100000;i++)
{
a[i][0]=getchar();
if(a[i][0]!='.')
{
for(j=1;j<11;j++)
{
scanf("%1c",&a[i][j]);
}
getchar();
t=i+1;
}
else
break;
}
if(i==0)
M=1;
printf("%d\n",t);
for(i=0;i<t;i++)
{
if(a[i][3]==code[0]&&a[i][4]==code[1]&&a[i][5]==code[2]&&a[i][6]==code[3])
{
printf("%d ",i+1);
flag++;
}
}
if(M==1)
{
printf("0 0\n");
}
else
{
if(flag==0)
printf("0 0");
else
printf("%d",flag);
}
return 0;
}