//非常重要的是关于进位的处理,这一题是参考书上的的,还要再看
#include<stdio.h>
int main(){
int a[3],b[3],c[3];
scanf("%d.%d.%d %d.%d.%d",&a[0],&a[1],&a[2],&b[0],&b[1],&b[2]);
int carry=0;//进位,不懂
c[2]=(a[2]+b[2])%29;//取得2号位的结果
carry=(a[2]+b[2])/29;//进位
c[1]=(a[1]+b[1]+carry)%17;//获得1号位的结果,加上进位
carry=(a[1]+b[1]+carry)/17;//进位
c[0]=a[0]+b[0]+carry;//获得0号位的结果
printf("%d.%d.%d",c[0],c[1],c[2]);
return 0;
} PAT A1058 A+B in Hogwarts
最新推荐文章于 2022-03-01 16:06:52 发布
本文介绍了一个简单的二进制数加法程序实现方法,重点在于如何处理进位问题。通过具体的C语言代码示例展示了如何计算两个三位二进制数相加,并考虑进位的情况。
1482

被折叠的 条评论
为什么被折叠?



