设为首页收藏本站language 语言切换
查看: 1380|回复: 0
收起左侧

[分享] C语言的算法:三重回文

[复制链接]
发表于 2022-9-9 14:24:16 | 显示全部楼层 |阅读模式
学技术,重在日拱一卒、一点一滴的积累。

今天,我们一起来分析C语言的算法:三重回文。

算法题目:找出3~999之间的所有的三重回文数字,并输出3-999之间的所有三重回文数,每行一个。

三重回文数既一个整数,它本身,它的平方,它的立方都是回文数。

编程思路

编程思路:

1、先判定一个变量i是否是回文数;

2、再判定该变量的平方i*i是否是回文数;

3、最后再判定该变量的立方i*i*i是否是回文数;

4、如果i,i*i,i*i*i都是回文数,就表示该变量是三重回文数,将该数输出。

程序范例

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int fun(int m);

/*判断一个数是否为回文子函数*/

int fun(int m)

{

    int  temp,s;

    temp=0;

    s=m;

    while(m!=0)

    {   

    temp*=10;

    temp+=m%10;

    m=m/10;

    }

    if(temp==s)

    {

      return 1;

    }

    else

    {

      return 0;

    }   

}

int main()

{

    int i;

    for(i=3;i<1000;i++)

    {

        if(fun(i)&&fun(i*i)&&fun(i*i*i))

        {

           printf("i=%3d i*i=%5d i*i*i=%7d\n",i,i*i,i*i*i);

         }      

    }

}

程序运行结果:
1.jpg

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-1 11:55 , Processed in 0.072376 second(s), 12 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表