小学生算术
时间限制:3000 ms | 内存限制:65535 KB
难度:1
-
描述
- 很多小学生在学习加法时,发现“进位”特别容易出错。你的任务是计算两个三位数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个0(这是输入结束标记)。
-
输入
- 输入两个正整数m,n.(m,n,都是三位数) 输出
- 输出m,n,相加时需要进位多少次。 样例输入
-
123 456 555 555 123 594 0 0
样例输出 -
0 3 1
代码:
#include<stdio.h> int main() { int n,m; int a[4],b[4],sum[4]; while(scanf("%d%d",&n,&m),!(n==0&&m==0)) { a[0]=n%10; a[1]=n/10%10; a[2]=n/100; b[0]=m%10; b[1]=m/10%10; b[2]=m/100; int d,c=0,k=0,i; for(i=0;i<3;++i) { d=a[i]+b[i]+c; sum[i]=d%10; if(d/10) { k++; c=d/10; } } printf("%d\n",k); } return 0; }