int countNumber(int leftValue, int rightValue, int target)
{
int currentValue, sum = 0, num;
for(int i = leftValue; i < rightValue; i++)
{
sum = 0;
currentValue = i;
while(currentValue > 0)
{
int j = currentValue % 10;
sum += j;
currentValue= currentValue / 10;
}
if(sum == target)
{
std::cout << i<<std::endl;
num++;
}
}
return num;
}
取出一个整型数字的每一位数,然后再恢复到原来的数
int test = 456321;
std::vector<int> vec;
while (test > 0)
{
int j = test % 10;
vec.push_back(j);
test = test / 10;
}
int kk = 0;
for (int i = vec.size() - 1; i >= 0; i--)
{
int p = 1;
//这里没有用c++中pow函数
for (int j = 0; j < i; j++)
{
p *= 10;
}
kk = kk + p * vec.at(i);
}
c++统计m和n之间有多少个数其各位数字之和为指定数
于 2023-01-03 17:45:29 首次发布