网站群建设,北京注册公司需要什么资料,ppt模板免费网站在线制作,短视频营销名词解释《C程序设计教程#xff08;第四版#xff09;——谭浩强》 习题2.7 从银行贷了一笔款d#xff0c;准备每月还款额为p#xff0c;月利率为r#xff0c;计算多少个月能还清。 设d30000元#xff0c;p6000元#xff0c;r1%。对求得的月份取小数点后一位#xff0c;对第二…《C程序设计教程第四版——谭浩强》 习题2.7 从银行贷了一笔款d准备每月还款额为p月利率为r计算多少个月能还清。 设d30000元p6000元r1%。对求得的月份取小数点后一位对第二位按四舍五入处理
提示设环球的月数为m则m[logp-log(p-d*r)]/log(1r)log(p/(p-d*r))/log(1r),log(p)表示以10为底p的对数 代码
//《C程序设计教程第四版——谭浩强》
//习题2.7 从银行贷了一笔款d准备每月还款额为p月利率为r计算多少个月能还清。
//设d30000元p6000元r1%。对求得的月份取小数点后一位对第二位按四舍五入处理//提示设环球的月数为m则m[logp-log(p-d*r)]/log(1r)log(p/(p-d*r))/log(1r),log(p)表示以10为底p的对数#include stdio.h
#include math.hint main()
{float d;//贷款数float p;//每月还款数float r;//月利率float m;//【计算】还钱的月数printf(请输入贷款总数\n);scanf(%f,d);printf(请输入每月还款额\n);scanf(%f,p);printf(请输入月利率\n);scanf(%f,r);// 检查输入的合理性月份不能为负数if (p d * r) {printf(每月还款额必须大于贷款利息\n);return 1; // 返回错误代码}mlog10(p/(p-d*r))/log10(1r);printf(还需要%.1f才可以还清\n,round(m*10)/10);//四舍五入的实现return 0;
}
运行结果 代码运行过程中遇到的问题
1在C语言中要计算以10为底的对数需要使用log10()函数而不是log()函数。 log10()函数是C标准库中的一个函数用于计算以10为底的对数。 这个函数的原型是double log10(double x)它返回参数x以10为底的对数值。 在使用这个函数之前需要包含math.h头文件因为log10()函数定义在这个头文件中。 注释log函数是用于计算以e为底的对数
怎么使用log10函数 下面是一个简单的示例代码展示了如何使用log10()函数来计算一个数的以10为底的对数 #include stdio.h
#include math.h
int main()
{double num 100.0; // 可以替换为任何正数double logValue log10(num); printf(The log10 of %f is %f\n, num, logValue); return 0;
}2怎么实现四舍五入
在C语言中round函数用于将一个浮点数四舍五入到最近的整数。这在处理需要按照特定小数位如一位小数的结果时非常有用。