马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
int main()
{
int i,j,max =0,temp = 0;
int result = 0;
for (i = 100;i<=999;i++)
{
for(j = 100;j<=999;j++)
{
result = i*j;
while(result)
{
temp = temp*10 + result%10;
result /= 10;
}
if (temp == result)
{
if (temp>max)
{
max = temp;
}
}
else
{
continue;
}
}
}
printf("%d",max);
return 0;
}
为什么我的max 结果始终都是0呢?,不能求出由两个 3 位数乘积构成的回文数
while(result)
{
temp = temp*10 + result%10;
result /= 10;
}
//在这里,你的result已经是零了
if (temp == result)
那么if语句就无论如何也不会执行,所以max就不会改变
|