从 10000 直接循环到 999999,先判断各位数字和是不是与所给数相等,不相等直接判断下一个数,如果相等用 equal 函数判断是否是回文数。
#include <bits/stdc++.h> using namespace std; int main() { int n, tt, flag(0);//flag 用于判断有没有符合要求的数字被输出 cin >> n; string temp; for (int i = 10000; i < 1000000; i++) { temp = to_string(i); int sum(0); tt = i; while (tt != 0) {//求各位数字和 sum = sum + tt % 10; tt /= 10; } if (sum != n) { continue; } else { if (equal(temp.begin(), temp.end(), temp.rbegin())) {//判断是否是回文数 flag = 1; cout << temp << endl; } } } if (flag == 0) { cout << "-1" << endl; } return 0; }
0.0分
0 人评分
2004年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:716 |
K-进制数 (C++代码)浏览:938 |
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码)浏览:664 |
简单的a+b (C语言代码)浏览:827 |
川哥的吩咐 (C++代码)浏览:1076 |
字符串比较 (C语言代码)答案错误????浏览:641 |
输出正反三角形 (C语言代码)格式错误!!!浏览:1177 |
C语言程序设计教程(第三版)课后习题1.5 (C++代码)浏览:1114 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:552 |
C语言训练-计算t=1+1/2+1/3+...+1/n (C语言代码)浏览:942 |