// phoneNumber.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#define telLength 2
int number[telLength]={4,2};
char c[10][10]=
{
"",
"",
"ABC",
"DEF",
"GHI",
"JKL",
"MNO",
"PQRS",
"TUV",
"WXYZ"
};
int answer[telLength]={0};
int total[10]={0,0,3,3,3,3,3,4,3,4};
void trave()
{
while(true)
{
for(int i=0;i<telLength;i++)
printf("%c",c[number[i]][answer[i]]);
printf("\n");
int k=telLength-1;
while(k>=0)
{
if(answer[k]<total[number[k]]-1)
{
answer[k]++;
break;
}
else
{
answer[k]=0;
k--;
}
}
if(k<0)
break;
}
}
void recursiveSearch(int* number,int* answer, int index, int n)
{
if(index==n)
{
for(int i=0;i<telLength;i++)
printf("%c",c[number[i]][answer[i]]);
printf("\n");
return;
}
for(answer[index]=0;answer[index]<total[number[index]];answer[index]++)
{
recursiveSearch(number,answer,index+1,n);
}
}
int _tmain(int argc, _TCHAR* argv[])
{
//trave();
recursiveSearch(number,answer,0,telLength);
return 0;
}