迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程,跟迭代法相对应的是直接法(或者称为一次解法),即一次性解决问题。迭代算法是用计算机解决问题的一种基本方法,它利用计算机运算速度快、适合做重复性 *** 作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值,迭代法又分为精确迭代和近似迭代。比较典型的迭代法如“二分法”和"牛顿迭代法”属于近似迭代法
include<stdioh>
#include<mathh>
int main()
{
double a;
double x2=0,x1=10;
printf("请输入被开方数:");
scanf("%lf",&a);
for(x1=10;fabs(x2-x1)>1e-10;)
{
x1=x2;
x2=(2x1+a/(x1x130));
}
printf("结果为:%f",x2);
return 0;
}
#include <stdioh>
#include <mathh>
float f(float x)
{return (exp(-x));
}
void main()
{
float d,x0,x1,eps=0;
printf("input x0 eps:");
scanf("%f%f",&x0,&eps);
do {
x1 = f(x0);
if (fabs(x1-x0)<eps)
{printf("%f",x1);
break;}
else
d=fabs(x1-x0);
x0=x1;
}while(d>eps);
} 迭代就是函数自己调用自己,用的时候注意选择迭代结束条件就行了,不要陷入无限迭代。下面给出一个递归求阶乘的简单函数示例
/
long jiechen(long n){
if(n==1)return 1; //递归结束条件
else retrun(njiechen(n-1));//递归过程
以上就是关于在C语言中,什么是迭代法全部的内容,包括:在C语言中,什么是迭代法、c语言 用迭代法求解、C语言中迭代法如何运用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)