/* 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 */ #include<stdio.h> #include<malloc.h> #include<string.h> #include<stdlib.h> #include<math.h> #include<string.h> #include <iostream> typedef struct Hash{ char ch; int iLen; char data[5]; }HASH; HASH Hash[10]={ '0', 0, "", '1', 3, "!@#", '2', 3, "abc", '3', 3, "def", '4', 3, "ghi", '5', 3, "jkl", '6', 3, "mno", '7', 4, "pqrs", '8', 3, "tuv", '9', 4, "wxyz", }; //判断输入字符串是否有效,并且输出有多少种字母组合 int JudgeInput(char* pInput,int* pRangeNum){ int iRange=1,numSize,i=0,iLen=0; while(pInput[i]!='