C++ 计算三位数加法进位次数 - 代码详解
#include
int countCarry(int a, int b) { int carry = 0; // 进位次数 int sum = 0; // 相加结果 int digit_a, digit_b; // a和b的各个位上的数字 int carry_flag = 0; // 进位标志
for (int i = 0; i < 3; i++) {
digit_a = a % 10;
digit_b = b % 10;
a /= 10;
b /= 10;
sum = digit_a + digit_b + carry_flag;
if (sum >= 10) {
carry++;
carry_flag = 1;
} else {
carry_flag = 0;
}
}
return carry;
}
int main() { int a, b; while (cin >> a >> b) { if (a == 0 && b == 0) { break; } int carry = countCarry(a, b); cout << carry << endl; }
return 0;
}

原文地址: http://www.cveoy.top/t/topic/l1H 著作权归作者所有。请勿转载和采集!