竞赛
考级
虽然是填空,但动动脑子就能想出来
#include <iostream> using namespace std; long long digit_sum(long long n){ // 返回 n 的数位和(递归) if(n/10==0) return n; // 递归边界 return n%10 + digit_sum(n / 10); // 递归拆分:末位 + 剩余部分 } int main() { long long n; cin >> n; cout << digit_sum(n); return 0; }
#include <iostream> using namespace std; int main() { long long n, sum = 0; cin >> n; while (n > 0) { // 不断取个位 sum += n % 10; // 加上个位 n /= 10; // 去掉个位 } cout << sum << endl; return 0; }
提交答案之后,这里将显示提交结果~