打印所有不超过256,其平方具有对称性质的数(也称回文数,例如22的平方是484, 484是回文数。则打印22 和484)。

来源:互联网 发布:端口映射软件使用教程 编辑:程序博客网 时间:2024/05/16 13:07
#include <stdio.h>#include <math.h>int func(long x);            //判断是否是回文数int main(){    int n;    int flag = 0;    long s;    printf("number\tpalindrome\n");    for(n = 1;n < 256;n++)    {        s = pow(n,2);        flag = func(s);        if(flag)        {            printf("%d\t%ld\n",n,s);        }    }    return 0;} int func(long x){    int n;    int a[16];     //这个数组用来储存x的每一位    int i;    int t;    int sum = 0;    n = x;    for(i = 0;x != 0;i++)              {        a[i] = x%10;        x = x/10;    }    for(t = 1;i > 0;i--)//从最后一位”逆序”    {        sum = sum+a[i-1]*t;        t = t*10;//求出“逆序”后的数    }    if(sum == n)       //如果相等 则代表是回文数,返回1    {        return 1;    }    Else//如果不是回文数返回0    {        return 0;    }}

#include <stdio.h>int func(int  n){    int t,m;    for(t=n,m=0;t;t/=10)    {        m=m*10+t%10;    }    return m==n;}int main(void) {    int i;    for(i=1;i<256;++i)    {        if(func(i*i))        {            printf("%d   %d   \n",i,i*i);        }    }    return 0;}

阅读全文
0 0