首页 > 代码库 > 武汉科技大学ACM :1005: 零起点学算法101——手机短号

武汉科技大学ACM :1005: 零起点学算法101——手机短号

Problem Description

大家都知道,手机号是一个11位长的数字串,同时,作为学生,还可以申请加入校园网,如果加入成功,你将另外拥有一个短号。假设所有的短号都是是 6+手机号的后5位,比如号码为13512345678的手机,对应的短号就是645678。
现在,如果给你一个11位长的手机号码,你能找出对应的短号吗?

Input

输入数据的第一行是一个N(N <= 200),表示有N个数据,接下来的N行每一行为一个11位的手机号码。

Output

输出应包括N行,每行包括一个对应的短号,输出应与输入的顺序一致。

Sample Input

21351234567813787654321

Sample Output

645678654321

HINT

如果用字符串,建议用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——手机短号