2006年9月全国等级考试三级c语言上机题库(二十一)
文章作者 100test 发表时间 2007:03:10 19:12:30
来源 100Test.Com百考试题网
题目21(无忧id 53 迭代方法求方程题)
下列程序prog1.c的功能是:利用以下所示的简单迭代方法求方程:cos(x)-x=0的一个实根。
Xn 1=cos(Xn)
迭代步骤如下:
(1)取X1初值为0.0;
(2)X0=X1,把X1的值赋给X0;
(3)X1=cos(X0),求出一个新的X1;
(4)若X0-X1的绝对值小于0.000001,执行步骤(5),否则执行步骤(2);
(5)所求X1就是方程cos(X)-X=0的一个实根,作为函数值返回。
请编写函数countValue()实现程序的要求,最后调用函数writeDat()把结果输出到文件OUT17.DAT中。
部分源程序已给出。
请勿改动主函数main()和输出数据函数writeDat()的内容。
#include
#include
#include
float countValue()
{ double x0,x1.
x1=0.0.
do{ x0=x1.
x1=cos(x0).
}while(fabs(x0-x1)>=0.000001).
return x1.
}
main()
{
clrscr().
printf("实根=%f\n",countValue()).
printf("%f\n",cos(countValue())-countValue()).
writeDat().
}
writeDat()
{
FILE *wf.
wf=fopen("OUT17.DAT","w").
fprintf(wf,"%f\n",countValue()).
fclose(wf).
}