程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C >> C語言問答 >> c語言的題目.

c語言的題目.

編輯:C語言問答

c語言的題目.

用迭代法求a的平方根,求平方根的迭代公式為xn+1=1/2*(xn+a/xn),要求前後兩次求出x的差的絕對值小於0.00001.

#include<math.h>
main()
{
 float a,xn,xn1,wucha=0.00001;
 scanf("請輸入一個整數%d",&a);
 xn=            /* xn初值 */
 xn1=            /* xn1初值 */
 while(fabs(xn1-xn)>=wucha) /* 判斷誤差是否大於0.00001 */
 {
  xn=             /* 迭代求xn、xn1的新值 */
  xn1=   ;
 }
 printf("a的平方根為:%f",xn1);
}

最佳回答:

你上面的程序是對的
追問:
結果有問題。能留下Q號嗎?
回答:
/*修改後源程序如下:*/
#include<stdio.h>
#include<math.h>
main()
{
 int a;
 float xn,xn1,wucha=0.00001;
 printf("請輸入一個整數:");
 scanf("%d",&a);
 xn=1;            /* xn初值 */
 xn1=a;            /* xn1初值 */
 while(fabs(xn1-xn)<=wucha) /* 判斷誤差是否大於0.00001 */
 {
  xn=xn1;             /* 迭代求xn、xn1的新值*/
  xn1=(xn+a/xn)/2;
 }
 printf("a的平方根為:xn=%.2f,xn1=%.2f\n",xn,xn1);
}
/*VC++6.0測試如下:*/

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved