题目
作者 DS课程组
单位 临沂大学
我国使用的手机号码为11位,其中各段有不同的编码方向:前3位是网络识别号;第4-7位为地区编码;第8-11位表示用户号码。
本题要求你实现一个程序,自动统计指定地区编码的手机号码的个数。
输入格式:
输入第一行为待查询的地区编码,随后每行都是11位数字组成的手机号码,当读到某一行只有一个英文句点 . 时,输入结束。
输出格式:
首先在第一行中输出手机号码的总个数。然后统计指定地区编码的手机号码有多少个。第二行首先输出第一次出现该地区编码的手机号码是第几个(从 1 开始计数,没有输出0),然后输出该地区编码手机号码的总个数(没有输出0),其间以一个空格分隔。题目保证输出的所有数字不超过109。
输入样例:
0549
13563910168
13505490199
18853905089
13705390115
.
输出样例:
4
2 1
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
栈限制
8192 KB
代码
#include<stdio.h>
#include<string.h>
int main(){
char str1[10];
gets(str1);
char num[12]={0};
int cnt=0,len=0,t=0,h=0;
for(int i=1;1;i++){
gets(num);
if(num[0]=='.')break;
len++;
int f=0,k=0;
for(int j=3;j<7;j++,k++){
if(str1[k]==num[j]){
f++;
}
}
if(f==4&&h==0){
cnt++;
h++;
t=len;
}
else if(f==4){
cnt++;
}
}
printf("%d\n",len);
printf("%d %d",t,cnt);
return 0;
}