求助大佬(回文数)
c语言吧
全部回复
仅看楼主
level 8
流光纪末 楼主
#include <stdio.h>
int main()
{
int n, m, square, i, temp, log;
char s[6];
scanf("%d",&n);
for (m = 1; m < n; m++)
{
i = 0;
square = m * m;
log = 1;
while (square != 0)
{
temp = square % 10;
s[i] = '0' + temp;\\'0'是指0的ASCII码值
i++;
square /= 10;
}
for(temp = 0; temp < i / 2; temp++)
{
if (s[temp] != s[i - 1 - temp]) \\当这个数不对称时
log = 0;
}
if(log) \\上面判断这个数不是回文数 不输出
printf("%d\n",m);
}
return 0;
}
2017年12月07日 04点12分 1
level 13
if (s[temp] != s[i - 1 - temp]) {
log = 0;
break; //加这句
}
2017年12月07日 05点12分 3
好的 谢谢。为什么要加这个'0',这个可以不加吗?
2017年12月11日 05点12分
@流光纪末 可以不加
2017年12月11日 05点12分
@ghj123h 嗯嗯 好的 谢谢,解决了
2017年12月13日 04点12分
1