首页 > 其他 > 详细

nyoj 74 小学生算术【水题】

时间:2015-09-01 09:14:02      阅读:889      评论:0      收藏:0      [点我收藏+]

小学生算术

时间限制:3000 ms  |  内存限制:65535 KB
难度:1
描述
很多小学生在学习加法时,发现“进位”特别容易出错。你的任务是计算两个三位数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据,直到读到两个0(这是输入结束标记)。
输入
输入两个正整数m,n.(m,n,都是三位数)
输出
输出m,n,相加时需要进位多少次。
样例输入
123 456
555 555
123 594
0 0
样例输出
0
3 
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 小学生算术【水题】

原文:http://blog.csdn.net/dxx_111/article/details/48143527

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!