[提示]年龄的立方是一个四位数 -> 10≤y≤21, 据此可将遍历范围缩小至[10, 21]区间.
#include<stdio.h>
#include<math.h>
short judge(short year)//x记录年龄的4次方, y记录年龄的6次方
{
int x=(int)pow(year, 3);
int y=(int)pow(year, 4);
//执行到这个函数, 说明y^3是一个四位数, y^4是一个六位数
char T[10];//用char型数组记录10个数字(年龄的三次方和年龄的四次方)
int i=0;//数组计数变量
while(x!=0)
{
T[i++]=x%10;
x=x/10;
}//将x分解为四个数字, 存入T数组中
while(y!=0)
{
T[i++]=y%10;
y=y/10;
}//将y分解为六个数字, 存入T数组中
//至此, 数据准备工作完成
char P[10]={0};//用P[0]~P[9]代表0~9这十个数字是否出现: P[2]=1表示2出现, P[5]=0表示5没出现
i=0;
while(i<10)
{
switch(T[