某数的平方具有对称性质,称此数为回文数,如11的平方为121,则11为回文数。请找出10~256中的所有回文数
若某数的平方具有对称性质,称此数为回文数,如11的平方为121,则11为回文数。请找出10~256中的所有回文数。(用一维数组)...
若某数的平方具有对称性质,称此数为回文数,如11的平方为121,则11为回文数。请找出10~256中的所有回文数。(用一维数组)
展开
1个回答
展开全部
C语言程序:
#include <stdio.h>
#define N 10
void toArray(long num, int arr[]);
int judge(int arr[]);
void main()
{
int num;
int arr[N];
for(num=10; num<=256; num++)
{
toArray(num*num, arr);
if(judge(arr) == 1)
printf("%ld\n", num);
}
}
void toArray(long num, int arr[])
{
arr[0] = 0;
while(num > 0)
{
arr[++arr[0]] = num % 10;
num /= 10;
}
}
int judge(int arr[])
{
int i;
for(i=1; i<=arr[0]/2 && arr[i]==arr[arr[0]-i+1]; i++);
return (i > arr[0]/2) ? 1 : 0;
}
运行结果:
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |