c++输入两个数A和B,然后输出A - B .

输入两个数A和B把A精确到小数后两位(四舍五入,只考虑小数后第三位),B精确到小数后两位(不用四舍五入),负数不考虑四舍五入然后输出A-B(结果保证不输出浮点数多余的0)... 输入两个数A和B

把A精确到小数后两位(四舍五入,只考虑小数后第三位),B精确到小数后两位(不用四舍五入),负数不考虑四舍五入

然后输出A - B (结果保证不输出浮点数多余的0)

输入A = B = 0时程序结束
展开
 我来答
xoaxa
推荐于2017-09-30 · TA获得超过8609个赞
知道大有可为答主
回答量:6415
采纳率:72%
帮助的人:3459万
展开全部
#include <stdio.h>
#include <math.h>
#include <string.h>

int main() {
int sign,size;
char format[20];
double a,b,eps = 1E-6;
printf("输入两个数( 0 0 to quit):");
while(scanf("%lf%lf",&a,&b) == 2) {
if(fabs(a) <= eps && fabs(b) <= eps)
break;
if(a < 0) {
a = -a;
sign = -1;
}
else sign = 1;
a = sign * ((int)(100 * a + 0.5))/100.0;
if(b < 0) {
b = -b;
sign = -1;
}
else sign = 1;
b = sign * int(100 * b)/100.0;
a -= b;
sprintf(format,"%lf",a);
size = strlen(format);
while(format[size - 1] == '0') {
format[size - 1] = 0;
--size;
}
if(format[size - 1] == '.')
format[size - 1] = 0;
printf("A - B = %s\n",format);
printf("\n输入两个数( 0 0 to quit):");
}
return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式