关于#c++#的问题:C++1到N的所有整数(包括1和N)中,十进制下数字和在A和B之间(包括A和B)的所有整数的和是多少

C++
1到N的所有整数(包括1和N)中,十进制下数字和在A和B之间(包括A和B)的所有整数的和是多少?

封装一个函数统计某个整数各位数字之和,然后主函数遍历判断求和

1N的所有整数(包括1N)中,十进制下数字和在A和B之间(包括A和B)的所有整数的和是多
#include <stdio.h>
int sums(int n)
{
    int s = 0;
    while(n>0)
    {
        s += n%10;
        n/=10;
    }
    return s;
}
int main()
{
    int A,B,N,i,S=0,sum,t;
    scanf("%d%d%d",&N,&A,&B);
    if(A>B)
    {
          t = A;
          A = B;
          B = t;
    }
    for(i=1;i<=N;i++)
    {
        sum = sums(i);
        if(sum >=A && sum<=B)
            S+=sum;
    }
    printf("%d",S);
    return 0;
}