惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
S
SegmentFault 最新的问题
罗磊的独立博客
Apple Machine Learning Research
Apple Machine Learning Research
The Cloudflare Blog
L
LangChain Blog
博客园 - 司徒正美
G
Google Developers Blog
博客园 - 【当耐特】
GbyAI
GbyAI
月光博客
月光博客
人人都是产品经理
人人都是产品经理
D
DataBreaches.Net
大猫的无限游戏
大猫的无限游戏
A
About on SuperTechFans
Microsoft Azure Blog
Microsoft Azure Blog
V
Visual Studio Blog
D
Docker
MongoDB | Blog
MongoDB | Blog
Vercel News
Vercel News
Stack Overflow Blog
Stack Overflow Blog
Jina AI
Jina AI
博客园 - 聂微东

飞絮落叶雪 - 编程

我让 Ai 写了一个记账本 1011-空心六边形 1071 - 字符图形7-星号菱形 1140 - 亲密数对 1138 - 求无暇素数 1136 - 输出m和n范围内的完全数(完美数) 1089 - 找数字 1151-桐桐数
1149 - 回文数个数
Mr.He · 2024-06-20 · via 飞絮落叶雪 - 编程

1149 - 回文数个数.png

思路

  1. 根据题意定义一个判断函数;
  2. 遍历所有数字,如果是回文数计数器就加一;

知识点

  1. 函数的用法
  2. 将数字倒序排列和原数相比,如果相同就是回文数

代码实现

#include <iostream>
using namespace std;

//mrhe.net编写,引用需保留出处
//定义函数,判断是否回文数
bool huiwen(int x) {
    int i, n, num = 0;
    //将x存入n,因为n在下面要进行计算
    n = x;
    //假设不是
    bool flag = false;
    //根据题意小于10的数都是,其实这个if是多余的,只是便于新手理解.
    if(x < 10) {
        flag = true;
    } else {
        //将数字倒序
        while(n != 0) {
            num = num * 10 + n % 10;
            n = n / 10;
        }
        //如果倒序之后的数和原来的数相同就返回true
        if(x == num) {
            flag = true;
        }
    }
    return flag;
}

int main() {
    int n, i, c = 0;
    cin >> n;
    //遍历1-n的数字,如果是回文数计数器+1
    for(i = 1; i <= n; i++) {
        if(huiwen(i) == true) {
            c++;
        }
    }
    cout << c << endl;
    return 0;
}