warning C4244: '=' : conversion from 'double' to 'float', possible loss of data,什么意思啊?
我经常出这样的错误啊,如何判断float和double啊,求高手详细点啊#include<stdio.h>#include<math.h>intmain(){floata...
我经常出这样的错误啊,如何判断float和double啊,求高手详细点啊
#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,disc;
scanf("%f%f%f",&a,&b,&c);
disc=pow(b,2)-4*a*c;
printf("disc=%f",disc);
if(disc>0)
printf("有两个不相同的实根 ");
else if(disc=0)
printf("有两个相同实根 ");
return 0;
} 展开
#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,disc;
scanf("%f%f%f",&a,&b,&c);
disc=pow(b,2)-4*a*c;
printf("disc=%f",disc);
if(disc>0)
printf("有两个不相同的实根 ");
else if(disc=0)
printf("有两个相同实根 ");
return 0;
} 展开
2个回答
展开全部
你的程序代码有错误else if(disc=0)
应该是else if(disc==0)
warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
这句话的意思是 注意 ‘=’ 你的一个变量从double转换成float型,可能会失去一部分数据,数据的精确度发生变化;float型表示的数据精确度小,一般解决办法就是强制类型转换,这个‘注意’,是系统的自动转换,强制转换语法规则(double)n;n表示的是一个其他类型的变量,括号里的表示要转换成的数据类型;
应该是else if(disc==0)
warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
这句话的意思是 注意 ‘=’ 你的一个变量从double转换成float型,可能会失去一部分数据,数据的精确度发生变化;float型表示的数据精确度小,一般解决办法就是强制类型转换,这个‘注意’,是系统的自动转换,强制转换语法规则(double)n;n表示的是一个其他类型的变量,括号里的表示要转换成的数据类型;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询