计算相同数字不同位数之和 的c++程
时间: 2024-10-21 08:04:20 浏览: 32
蓝桥杯国赛题之C++数字黑洞.zip
在C++中,如果你想要计算给定数字的不同位数之和,你可以创建一个函数,首先将数字转换成字符串,然后遍历每一位,并将其转换回整数加到总和中。下面是一个简单的示例:
```cpp
#include <iostream>
#include <string>
int sumOfDigitsInEachPosition(int num) {
std::string strNum = std::to_string(num);
int positionSum = 0;
for (char digit : strNum) {
positionSum += digit - '0'; // '0' 是字符 '0' 对应的 ASCII 码值
}
return positionSum;
}
int main() {
int inputNumber;
std::cout << "请输入一个整数: ";
std::cin >> inputNumber;
int totalSum = sumOfDigitsInEachPosition(inputNumber);
std::cout << "数字的各位数字之和是: " << totalSum << std::endl;
return 0;
}
```
在这个程序中,`sumOfDigitsInEachPosition` 函数接受一个整数 `num`,将其转换为字符串,然后逐个处理每一位(字符),减去 `'0'` 后得到对应的数字并累加到 `positionSum` 中。
阅读全文