求任一正整数的各位数字的平方和。 注意:语言选DEV C++。 输入格式:"%d" 输入一个正整数。 输出格式:"%d\n" 输出结果不控制列宽。 输入样例: 1305 输出样例: 35
时间: 2024-10-27 14:09:46 浏览: 16
对任一正整数n,按从小到大的顺序输出所有不超过2^n-1的梅森数-C语言代码
你可以使用C++编写一个简单的程序来求解这个问题。首先,我们需要读取用户输入的正整数,然后将它分解成每一位数字,并计算它们的平方和。以下是一个示例代码:
```cpp
#include <iostream>
#include <string>
int main() {
int num;
std::cout << "请输入一个正整数: ";
std::cin >> num;
// 将整数转换成字符串以便处理每一位
std::string str = std::to_string(num);
int sum_of_squares = 0;
for (char digit : str) {
// 对每一位字符(实际上是数字)求平方并累加
sum_of_squares += static_cast<int>(digit) * static_cast<int>(digit);
}
std::cout << "各位数字的平方和: " << sum_of_squares << "\n";
return 0;
}
```
当你运行这个程序时,按照提示输入一个正整数,比如1305,程序会计算出各个位数的平方和并输出结果35(因为1^2 + 3^2 + 0^2 + 5^2 = 1 + 9 + 0 + 25 = 35)。请注意,此代码假定输入的是有效的非负整数。
阅读全文