程序设计 -- 数字之和为 13 的整数

求出1~ n范围内的整数,使其数字之和为13,请问这样的数有多少个?
例如:数 85其数字之和为 8 + 5 = 13
数 373 ,其数字之和为 3 + 7 + 3 = 13 。
输入格式
一个整数n(n<= 10000000)
输出格式
输出一个整数,代表符合条件数的总个数
输入样例
1000
输出样例
75

#include <iostream>

int main()
{
    int n, count = 0;
    std::cin >> n;
    for (int i = 1; i <= n; i++)
    {
        int x = i;
        int sum = 0;
        while (x)
        {
            sum += x % 10;
            x /= 10;
        }
        if (sum == 13)
            count++;
    }
    std::cout << count << std::endl;
    return 0;
}

#include<iostream>

using namespace std;

int getSum(int num)
{
    int sum = 0;
    for (int i = 0;i < 8;i++)
    {
        sum += (num / (int)pow(10, i)) % 10;
    }
    return sum;
}
int main()
{
    int n,count=0;
    cout << "输入数字:"<< endl;
    while (1)
    {
        cin >> n;
        if (n <= 10000000)
        {
            cout << "数字超范围重新输入:" << endl;
            break;
        }
    }
    for (int i = 1;i <= n;i++)
    {
        if (getSum(i) == 13)
            count++;
    }
    cout << count << endl;
    return 0;
}

#include//头文件
using namespace std;//声明(如头文件中有.h则不用写)

int main()
{
int sum,i,k,n,t,x,y;
cin>>n;//输入n
t=0;
for(i=1;i<=n;i++)
{
sum=0;
y=i;
while(y>0)
{
x=y%10;
y=y/10;
sum=sum+x;

    }
    if(sum==13)
       t++;
  }
    cout << t << endl;//输出
     return 0;

}