题解
【入门】求任意三位数各个数位上数字的和-2
1 条题解
-
0
解题思路
题目要求把一个三位数的百位、十位、个位数字拆出来,然后求和。
怎么拆数字? 用除法和取余:
- 百位:x 除以 100,得到百位数(比如 123÷100=1)
- 十位:x 先除以 10 再对 10 取余(比如 123÷10=12,12%10=2)
- 个位:x 对 10 取余(比如 123%10=3)
然后把三个数字加起来就行。
举例 123:
- 百位 123÷100=1
- 十位 (123÷10)%10=2
- 个位 123%10=3
- 和 = 1+2+3 = 6
参考代码
#include <iostream> using namespace std; int main() { int x; cin >> x; int b = x / 100; // 百位 int s = (x / 10) % 10; // 十位 int g = x % 10; // 个位 cout << b + s + g << endl; return 0; }复杂度分析
- 时间复杂度:O(1)
- 空间复杂度:O(1)
- 1