重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
需要准备的材料分别有:电脑、C语言编译器。
成都创新互联公司十载专注成都高端网站建设按需制作服务,为客户提供专业的成都网站制作,成都网页设计,成都网站设计服务;成都创新互联公司服务内容包含成都网站建设,微信小程序,软件开发,网络营销推广,网络运营服务及企业形象设计;成都创新互联公司拥有众多专业的高端网站制作开发团队,资深的高端网页设计团队及经验丰富的架构师高端网站策划团队;我们始终坚持从客户的角度出发,为客户量身订造网络营销方案,解决网络营销疑问。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,输入C语言代码:
double a = 1000, n = 10, p = 0.001;
printf("%lf", a * pow(1+p, n) - a);
3、编译器运行test.cpp文件,此时成功列出公式并计算出了利息结果。
(int)强制转成整型,如果是小数就只取整数部分。
可能有的编译器会把100保存成99.999999吧,我推测,这样只会取99,不精确。
改进办法是改成(int)(pow(10,i)+0.01).
你把x定义成float类型试试。
10的2次方在计算机算来是99.9999999,无限接近100但小于100,你用int类型就只取整数部分了。
pow 函数是 double 型。是否你的编译器引入了误差。你只是处理4位数,你可以自己写 my_pow(int x):
int my_pow(int x){
int i,v=1;
if (x==0)return 1;
for (i=1;i=x;i++) v=v*10;
return v;
}
-------------
调用:
int guess,i,temp,p;
scanf("%d",guess);
for (i=3;i=0;i--){
temp=guess/my_pow(i);
p =temp*my_pow(i);
guess = guess-p;
}
不会引入误差。