神仙水用完还用乳液吗:C语言高手帮忙啊!floating point erorr 是什么问题啊?

来源:百度文库 编辑:神马品牌网 时间:2024/04/27 17:06:49
#include "math.h"
#include <stdio.h>
float a;
void niu()
{float n0,n1;

n0=a/2;
n1=(n0+a/n0)/2;
do
{n0=n1;
n1=(n0+a/n0)/2;
}
while (fabs(n0-n1)>=1e-5);
printf("The square root of %5.2f is %8.5f\n",a,n1);

}

two(int x)
{
int i=0;
long r,t=1,ten=0,y;
y=x;
do
{r=x%10;
ten=ten+r*t;
t=t*2;
x=x/10;
i++;
}
while (x!=0);
printf("the binary %ld according the decimal number is %d\n",y,ten);
return(ten);
}

int y;
void main()

{int Q[9]={1101,1010,1111,1111,1101,1100,1011,1000,1001};
int i,sum,x;
for(i=0;i<=9;i++)
{x=Q[i];
Q[i]=two(x);
sum=0;
Q[i]=y;
sum=sum+Q[i]*Q[i];
}
sum=sum/10;
a=sum*5/1024;
niu();
}

我在turboC上运行上诉程序时出现错误:floating point erorr:domain
请各位高手帮帮忙吧!谢谢了!

这个问题在我最初编程时也常遇到,floating point erorr:意思就是浮动的指针错误,对于数组,数组名是常量,所以不能进行++、--运算,对于指针它是变量,可以进行++,--等运算,在某些情况下数组名和指针有相同的功效,因为它们都保存着地址量。

数组中只有九个数,可是你循环了十次,当然有错误