重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
inf 是无穷的意思。
成都创新互联公司成立与2013年,是专业互联网技术服务公司,拥有项目网站设计制作、成都网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元肃北做网站,已为上家服务,为肃北各地企业和个人服务,联系电话:028-86922220
初始化里 写 inf ,前面 inf 应当 有 宏定义,例如:
#define inf 0x7fffffff
b[]={3,inf,5,6};
如下程序仅供参考:
#include stdio.h
#include math.h
int main(void)
{
double a,b,c,x1,x2,temp;
printf(" 利用公式法求一元二次方程的解。\n\n");
printf(" 请输入方程系数a、b、c的值(各数之间空格隔开):");
while(scanf("%lf %lf %lf",a,b,c) == 3)
{
while(getchar() != '\n')
continue;
if(!a)
{
printf(" a = 0 不是一元二次方程,请重新输入:");
continue;
}
if(b*b-4*a*c0)
{
printf(" b^2 - 4ac 0 这个一元二次方程无实数解,请重新输入:");
continue;
}
x1=(-b+sqrt(b*b-4*a*c))/(2*a);
x2=(-b-sqrt(b*b-4*a*c))/(2*a);
if(x1=x2)
{
temp=x1;
x1=x2;
x2=temp;
}
printf(" x1 = %.2f x2 = %.2f\n\n",x1,x2);
printf(" 请输入方程系数a、b、c的值(各数之间用空格隔开):");
}
return 0;
}
在数据处理输入输出时,可能遇到数据读入空值(极大、极小)、运算中分母为0或0.0,对0取对数等操作。将产生nan或inf 。
nan:not a number, 表示 “无效数字”
INF:infinite,表示“无穷大”
超出浮点数的表示范围(溢出)
#include stdio.h
#include math.h
#include stdlib.h
#include time.h
double randomExponential(double) ;
int main() {
//double lambda;
//double pV = 0.0;
double x,d = 0.0;
srand(time(NULL));
for (int i = 1;i = 10;i++) {
//randomExponential;
x = randomExponential(d);//d的值是0.0
printf("%lf\n",x);
}
return 0;
}
double randomExponential(double lambda) {
double pV = 0.0;
while(true) { //这个循环的功能就是使pV的值为1,很奇怪的做法
pV = (double)rand()/(double)RAND_MAX;
if (pV != 1) {
break;
}
}
pV = (-1.0/lambda)*log(1-pV); //pV的值是1,1-1的对数是不存在的
double d = pV;
return d; //返回的无穷大+∞
}