1.不使用任何自定义数据类型,编写一个子程序(过程或函数),该子程序能够将一个实数分解为它的证书和小数部分,既:使得该子程序的调用者(主控程序或其它子程序)能够得到该实数的小数部分(也是一个实数)
要求给出调用该程序的代码段以说明如何使用该子程序.
2.对与0<x<1,利用公式e^x=1+x+x^2/2!+....+x^i/i!+...,求e^x的近似值,结果精确到10^-8
,要求编写一个函数完成这一计算.(其中,e^x表示e的x次冥)
----------------解决方案--------------------------------------------------------
1.
double a=32.5;
printf("%f",(double)((int)a)); //整数部分
printf("%f",a-(double)((int)a)); //小数部分
----------------解决方案--------------------------------------------------------
1.不使用任何自定义数据类型,编写一个子程序(过程或函数),该子程序能够将一个实数分解为它的证书和小数部分,既:使得该子程序的调用者(主控程序或其它子程序)能够得到该实数的小数部分(也是一个实数)
要求给出调用该程序的代码段以说明如何使用该子程序.
2.对与0<x<1,利用公式e^x=1+x+x^2/2!+....+x^i/i!+...,求e^x的近似值,结果精确到10^-8
,要求编写一个函数完成这一计算.(其中,e^x表示e的x次冥)
第二个用while(power(x,i)<1e-8)来控制精度
求和用循环来实现。
x的i次方可以利用函数实现
----------------解决方案--------------------------------------------------------
2.对与0<x<1,利用公式e^x=1+x+x^2/2!+....+x^i/i!+...,求e^x的近似值,结果精确到10^-8
,要求编写一个函数完成这一计算.(其中,e^x表示e的x次冥)
先做个函数求x^i/i!,结果只要求精确到10^-8,用pow(x,i)/factorial(i) double 型就可以达到这个精度了。
factorial(i)是求i阶乘函数,具体代码自己编,再把上面的各项相加就OK了。
----------------解决方案--------------------------------------------------------
看这思路好简单哦 一上手就出问题! 失去学C的信心了 5555555555555
factorial具体用途是什么?
----------------解决方案--------------------------------------------------------
数学,一点不会~汗死,咋办~!憋屈吧
----------------解决方案--------------------------------------------------------
别用C++知识 还没学呢 数学只是知道一小点 刚好及格那种的 ~~~~~~~
----------------解决方案--------------------------------------------------------