小明的烦恼

来源:互联网 发布:考研网络培训排行榜 编辑:程序博客网 时间:2024/05/17 08:26
  • 题目223
  • 题目信息
  • 运行结果
  • 本题排行
  • 讨论区

     

    时间限制:3000 ms  |  内存限制:65535 KB
    难度:1
    描述
    小明最近接到了一个棘手的任务,他们公司有一个电话簿.但是这是一个奇怪的电话簿,因为它不是用数字记录电话号码,而是用数字键上所对应的字母来记录电话号码(2-abc,3-def,4-ghi,5-jkl,6-mno,7-pqrs,8-tuv,9-wxyz),电话号码只有11位。现在你的任务就是帮小明写一个程序来把这些字母的电话号码转化成数字的电话号码。
    输入
    第一行输入一个正整数T(0<T<=100),表示测试数据的组数
    每组测试数据只有一行,输入一串字符(字符长度为11);
    输出
    每组输出占一行,输出数字的电话号码
    样例输入
    3phqghumeaylnlfdxfircvscxggbwkfnqd
    样例输出
    747448632956533934728729442953673
    #include<stdio.h>#include<string.h>int main(){ int n; char str[11]; scanf("%d",&n); while(n--){  scanf("%s",str);  int t,i,j;  t=strlen(str);  for(i=0;i<t;i++){   j=(str[i]-'a'+6)/3;   if(j<=6)   printf("%d",j);   else{    if(str[i]>='p'&&str[i]<='s')     printf("7");    if(str[i]>='t'&&str[i]<='v')     printf("8");    if(str[i]>='w'&&str[i]<='z')     printf("9");   }  }  printf("\n"); } return 0;}
    很水的题,我一直想找一个简单的方法,最后还是用笨方法AC了,这里用nstr[110]=“222233344455566677778889999”,可简化解题过程。
  • 0 0
    原创粉丝点击