nyoj 74 小学生算术【水题】

小学生算术

时间限制:3000 ms | 内存限制:65535 KB

难度:1

描述 很多小学生在学习加法时,发现“进位”特别容易出错。你的任务是计算两个三位数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个0(这是输入结束标记)。输入输入两个正整数m,n.(m,n,都是三位数)输出输出m,n,相加时需要进位多少次。样例输入123 456555 555123 5940 0样例输出03 1来源[张洁烽]原创上传者张洁烽

思路:

将个十百三位上的数分别求出来,然后进行相加,从个位开始,还得考虑进位,然后看看他们的和是否大于等于10,如果大于等于10,cnt++,,并且它前面的数也得加1(表示进位)!

代码:

#include <stdio.h>#include <string.h>int main(){int a,b;int a1,a2,a3,b1,b2,b3;while(scanf("%d%d",&a,&b)&&(a||b)){int cnt=0;a1=a/100;a2=a/10%10;a3=a%10;b1=b/100;b2=b/10%10;b3=b%10;if(a3+b3>=10){cnt++;a2++;}if(a2+b2>=10){cnt++;a1++;}if(a1+b1>=10){cnt++;}printf("%d\n",cnt);}return 0;}

版权声明:本文为博主原创文章,未经博主允许不得转载。

最好的感觉就是你什么都跟我说。

nyoj 74 小学生算术【水题】

相关文章:

你感兴趣的文章:

标签云: