c语言小明的烦恼

描述 
小明最近接到了一个棘手的任务,他们公司有一个电话簿.但是这是一个奇怪的电话簿,
因为它不是用数字记录电话号码,而是用数字键上所对应的字母来记录电话号码(2-abc,3-def,4-ghi,5-jkl,6-mno,7-pqrs,8-tuv,9-wxyz),
电话号码只有11位。现在你的任务就是帮小明写一个程序来把这些字母的电话号码转化成数字的电话号码。
输入
第一行输入一个正整数T(0<T<=100),表示测试数据的组数
组测试数据只有一行,输入一串字符(字符长度为11);
输出
每组输出占一行,输出数字的电话号码
样例输入
3
phqghumeayl
nlfdxfircvs
cxggbwkfnqd
样例输出
74744863295
65339347287
29442953673
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<string>
#include <iostream>  
using namespace std;
void  fun(char n)  
{  
    switch(n)
	{  
        case 'a':  
        case 'b':  
        case 'c':  
            printf("2");  
            break;  
  
        case 'd':  
        case 'e':  
        case 'f':  
            printf("3");  
            break;  
  
        case 'g':  
        case 'h':  
        case 'i':  
            printf("4");  
            break;  
        case 'j':  
        case 'k':  
        case 'l':  
            printf("5");  
            break;  
  
        case 'm':  
        case 'n':  
        case 'o':  
            printf("6");  
            break;  
  
        case 'p':  
        case 'q':  
        case 'r':  
        case 's':  
            printf("7");  
            break;  
  
        case 't':  
        case 'u':  
        case 'v':  
            printf("8");  
            break;  
  
        case 'w':  
        case 'x':  
        case 'y':  
        case 'z':  
            printf("9");  
            break;  
        default:  
            break;  
	}
	 
}
int main()
{
	int N,i,j=0;
	char c[1000];
	scanf("%d",&N);  
	getchar();
	while(N--)
	{
        for(i=0;i<12;i++)
		{
		scanf("%c",&c[i]);
		}
		for(i=0;c[i]!='\0';i++)
		{
			fun(c[i]);
		}
		printf("\n");
	}
	return 0;
}


猜你喜欢

转载自blog.csdn.net/xiaoli130134/article/details/80239535
今日推荐