初学C语言3

C程序设计第三章第三题

3.3购房从银行贷了一笔款d,准备每月还款额为p,月利率为r,计算多少月能还清。设d为3000000元,p为6000元,r为1%。对求得的月份取小数点后一位,对第2位按四舍五入处理。

提示:计算还清月数m的公式如下:

                                             m = log(p) - log(p - d * r) / log(1 + r)

可以将公式改写为:

m = log(p / (p - d * r)) / log(1 + r)

C的库函数中有求对数的函数log10,是求以10为底的对数,log(p)表示log p。

全部代码如下:

#include<stdio.h>
#include<math.h>  //要使用log10计算就必须调用数学库 

int main()
{
	int d, p; //定义贷款总钱数和每月还款额 
	double r, m, x, y; //定义月利率和还清钱的月份还有要用到的x,y 
	
	d = 300000; //贷款总钱数
	p = 6000; //每月还款额  
	r = 0.01;	// 月利率
	
	x = p / (p - d * r);	//计算公式的上半部分 
	y = 1 + r;  //计算公式的下半部分 
	m = log10(x) / log10(y); //计算出月份 
	
	printf("需要的月数为:%.2lf", m);	//输出结果 
	return 0;
 } 

作者的编译水平有限,欢迎指出代码中的不足,欢迎改进,谢谢点赞。

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值