大家都知道,手机号是一个11位长的数字串,同时,作为学生,还可以申请加入校园网,如果加入成功,你将另外拥有一个短号。假设所有的短号都是是 6+手机号的后5位,比如号码为13512345678的手机,对应的短号就是645678。
现在,如果给你一个11位长的手机号码,你能找出对应的短号吗?
标签:des style blog io ar color os sp for
大家都知道,手机号是一个11位长的数字串,同时,作为学生,还可以申请加入校园网,如果加入成功,你将另外拥有一个短号。假设所有的短号都是是 6+手机号的后5位,比如号码为13512345678的手机,对应的短号就是645678。
现在,如果给你一个11位长的手机号码,你能找出对应的短号吗?
输入数据的第一行是一个N(N <= 200),表示有N个数据,接下来的N行每一行为一个11位的手机号码。
输出应包括N行,每行包括一个对应的短号,输出应与输入的顺序一致。
2 13512345678 13787654321
645678 654321
如果用字符串,建议用scanf("%s")读入。
我的代码:
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 int N; 6 cin>>N; 7 while(N--){ 8 char a[11]; 9 cin>>a; 10 cout<<‘6‘; 11 for(int i=6;i<11;i++) 12 cout<<a[i]; 13 cout<<endl; 14 } 15 return 0; 16 }
其他代码:
1 #include<stdio.h> 2 #include<string.h> 3 int main() 4 { 5 int n,i=0; 6 char phone[12]; 7 scanf("%d",&n); 8 for(i=0;i<n;i++){ 9 scanf("%s",phone); 10 phone[5]=‘6‘; 11 for(int j=5;j<11;j++) 12 putchar(phone[j]); 13 printf("\n"); 14 } 15 return 0; 16 }
1 #include <iostream> 2 3 using namespace std; 4 5 int main() 6 { 7 int N; 8 cin>>N; 9 if(N<=0 || N>200) 10 return 0; 11 char (*a)[11]=new char[N][11]; 12 char (*r)[7]=new char[N][7]; 13 for(int i=0;i<N;++i) 14 { 15 cin>>a[i]; 16 for(int j=6;j<11;++j) 17 { 18 r[i][0] = ‘6‘; 19 r[i][j-5] = a[i][j]; 20 r[i][6] = ‘\0‘; 21 } 22 23 } 24 for(int i=0;i<N;++i) 25 { 26 cout<<r[i]<<endl; 27 } 28 return 0; 29 }
武汉科技大学ACM :1005: 零起点学算法101——手机短号
标签:des style blog io ar color os sp for
原文地址:http://www.cnblogs.com/liuwt365/p/4147413.html