c++回文数程序

这篇具有很好参考价值的文章主要介绍了c++回文数程序。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

题目:从左向右读和从右往左读是完全一样的,这样的数称为“回文数”。像数字在照镜子一样,现在试着求出1~n之间“回文数”的个数。

这一个题目我们可以这样做:

首先,我们来判断一个数是不是回文数。

while(n!=0){
    s=n%10;//取出个位
    sum = sum*10+s;//把这个数加上10倍sum存在sum里面。这样可以使以前的个位变成最高位。
    n = n/10;//去掉个位
}

有了这一步,我们就可以写出程序来了。

我们用一个函数来打包这个代码。

bool huiwen(int n){
    int t=n, sum=0, s;
    while(n!=0){
        s=n%10;
        sum = sum*10+s;
        n = n/10;
    }
    if(sum==t){
        return 1;
    }
    else{
        return 0;
    }
}

原理:

先把n赋值给t,方便后续比较。然后创造一个倒序数存储变量sum。最后创造普通变量s。在还有没判断的数的情况一直循环刚才的操作,直到得出n的倒序数。然后判断,如果倒序数等于原来的数,那么返回1,否则返回0。

再加上主函数main()里面的代码,用一个for循环里的循环变量来当作参数,用计数器计数,最后输出计数器即可。文章来源地址https://www.toymoban.com/news/detail-559860.html

#include <cstdio>
#include <iostream>
using namespace std;
bool huiwen(int n){
    int t=n, sum=0, s;
    while(n!=0){
        s=n%10;
        sum = sum*10+s;
        n = n/10;
    }
    if(sum==t){
        return 1;
    }
    else{
        return 0;
    }
}
int main(){
    int a, cnt=0;
    bool torf;
    scanf("%d", &a);
    for(int i=1; i<=a; i++){
        torf = huiwen(i);
        if(torf){
            cnt++;
        }
    }
    printf("%d", cnt);
    return 0;
}

到了这里,关于c++回文数程序的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【动态规划】【二分查找】【C++算法】730. 统计不同回文子序列

    视频算法专题 动态规划汇总 二分查找算法合集 给你一个字符串 s ,返回 s 中不同的非空回文子序列个数 。由于答案可能很大,请返回对 109 + 7 取余 的结果。 字符串的子序列可以经由字符串删除 0 个或多个字符获得。 如果一个序列与它反转后的序列一致,那么它是回文序列

    2024年01月19日
    浏览(50)
  • 回文数判断。设n是一任意自然数,如果n的各位数字反向排列所得自然数与n相等,则n被称为回文数。从键盘输入一个5位数字,请编写程序判断这个数字是不是回文数。

    回文数判断。设n是一任意自然数,如果n的各位数字反向排列所得自然数与n相等,则n被称为回文数。从键盘输入一个5位数字,请编写程序判断这个数字是不是回文数。 回文数判断。设n是一任意自然数,如果n的各位数字反向排列所得自然数与n相等,则n被称为回文数。从键盘

    2024年02月05日
    浏览(67)
  • C++深度优先搜索(DFS)算法的应用:树中可以形成回文的路径数

    深度优先搜索(DFS) 状态压缩 给你一棵 树(即,一个连通、无向且无环的图),根 节点为 0 ,由编号从 0 到 n - 1 的 n 个节点组成。这棵树用一个长度为 n 、下标从 0 开始的数组 parent 表示,其中 parent[i] 为节点 i 的父节点,由于节点 0 为根节点,所以 parent[0] == -1 。 另给你一

    2024年02月04日
    浏览(42)
  • 使用C++编写自己的编程语言CASM

    CASM帮助文档: CASM解释器讲解视频: 我独自开发了一种编程语言:CASM CASM解释器源代码(剪贴板有问题,总是粘贴成一行,哪位大佬帮帮我……): #include iostream #include cstring #include string #include cstdio #include map #include queue #include stack #include cstdlib #include list #include \\\"hint.hpp\\\" us

    2024年02月10日
    浏览(53)
  • 【go语言开发】编写单元测试

    本文主要介绍使用go语言编写单元测试用例,首先介绍如何编写单元测试,然后介绍基本命令的使用,最后给出demo示例 在go语言中编写单元测试时,使用说明 测试文件命名 :在 Go 语言中,测试文件的命名应与被测试的源代码文件相同,但以 “_test” 结尾。例如,如果你的源

    2024年02月04日
    浏览(45)
  • c语言编写排序算法——直接插入排序(附详细代码)

    记号说明: a[k:r] 是指序列 a[k] a[k+1] a[k+2] … a[r] 。 为了讨论简单,假设待排序的每个记录是一个整数,这个整数就是排序码。 直接插入排序 :先将第一个记录看作是一个有序的记录序列,然后从第二个记录开始,依次将未排序的记录插入到这个有序的记录序列中去,直到整

    2024年02月11日
    浏览(42)
  • C++ Win32程序编写入门

    翻译:原文地址 ​        本文档描述了Win32++9.1版的功能。若要下载Win32++的程序清单,可以点击这里。         Win32++是一个用于构建windows应用程序的C++库。 Win32++是MFC的免费替代品 。它还有一个额外的优势,即能够在各种免费编译器上运行,包括Visual Studio Communit

    2024年02月05日
    浏览(32)
  • 使用Visual C++ 2010编写运行第一个C++程序

    本文主要介绍Visualc++ 2010学习版的操作界面,创建一个Win32控制台项目,编写并运行自己的第一个C++程序。主要包括以下几个方面: Visual C++ 2010概述 Visual C++ 2010下载安装 Visual C++ 2010操作界面 创建Win32控制台项目 编写C++程序 运行程序 本文使用的软件版本: Windows 10 Visual C++

    2024年02月05日
    浏览(57)
  • 1.1 编写一个简单的C++程序

      博主介绍:爱打游戏的计算机专业学生 博主主页:夏驰和徐策 所属专栏:夏驰和徐策带你从零开始学C++ 这段话解释了一个C++程序中的`main`函数的基本结构和功能。 它告诉我们以下几点: 1. C++程序的入口点是`main`函数,操作系统通过调用`main`函数来运行程序。 2. `main`函数

    2024年02月10日
    浏览(62)
  • C++程序入门(helloworld.cpp编写)

    天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。 刚接触C++,安装了环境之后想跑一下简单的C++程序,每个程序语言最初的程序好像都是

    2024年02月09日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包