题目链接:1.数位递增的数 - 蓝桥云课 (lanqiao.cn)
需这题要注意的是不能先除再取模,不然永远都是自己和自己比
#include <iostream>
using namespace std;
int main()
{
// 请在此输入您的代码
int n, count = 0; bool result = true;
std::cin >> n;
for (int i = 1; i <= n; i++) {
int sum = i, num = i % 10;//记录最后一位
result = true;
while (sum != 0) {
if (sum % 10 > num) {
result = false;//如果大于就不是数位递增
}
num = sum % 10;//传到上一位来作为最后一位数
sum = sum / 10;//判断完丢掉最后一位
}
if (result) {//如果为真说明这个数是数位递增
count++;
}
}
std::cout << count;//输出结果
return 0;
}