74.小学生算术
- 描述
- 很多小学生在学习加法时,发现“进位”特别容易出错。你的任务是计算两个三位数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个0(这是输入结束标记)。
- 输入
- 输入两个正整数m,n.(m,n,都是三位数)
- 输出
- 输出m,n,相加时需要进位多少次。
- 样例输入
-
123 456 555 555 123 594 0 0
- 样例输出
-
0 3 1
1 #include<stdio.h> 2 int main( ) { 3 int m, n, i, j; 4 int a[3], b[3]; 5 while(scanf("%d%d", &m, &n), m != 0||n != 0) { 6 a[0] = m / 100; 7 a[1] = (m - 100 * a[0]) / 10; 8 a[2] = m % 10; 9 b[0] = n / 100; 10 b[1] = (n - 100 * b[0]) / 10; 11 b[2] = n % 10; 12 j = 0; 13 for(i = 2; i >= 0; i--) { 14 if(a[i]+b[i]>= 10) { 15 j++; 16 a[i - 1] += 1;//考虑进位问题 17 } 18 } 19 printf("%d\n", j); 20 } 21 return 0; 22 }