c语言 怎么保存一个实数的整数部分 怎么判断sqrt(x) 是否为整数 类型转换不行 我试过了 在某些情况是错的

如题所述

用个变量来保存撒,判断sqrt(x)是否为整数,你先把他保存在n变量中,然后n对1取余,如果取余后的结果为0,则为整数,否则非整数。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-13
哥哥编译器的实现不一样,有的是直接省掉小数,有的是四舍五入
第2个回答  2012-12-13
不到

c语言 怎么保存一个实数的整数部分 怎么判断sqrt(x) 是否为整数 类型转 ...
用个变量来保存撒,判断sqrt(x)是否为整数,你先把他保存在n变量中,然后n对1取余,如果取余后的结果为0,则为整数,否则非整数。

怎么用c语言判断一个数是否为整数(这个数是开平方出来的)?
while(c>=0) \/\/如果输入小于0,就结束程序 { scanf("%f",&c);b=sqrt(c);if (fabs(b-(int)b)<1e-8) printf("%.0f的开平方是个整数\\n",c);elseprintf("%.0f的开平方不是整数\\n",c);} } 结果

c++(i=2;i<=(int) sqrt(x))什么意思
sqrt是开方的意思,(int)是强类型转换(也就是取整)的意思,所以连起来就是小于等于根号下x的整数部分,比如说x=10,(int)sqrt(x)就是3,不懂再问吧。

c语言sqrt函数参数怎么转化为float型类型?
C语言中的sqrt()函数需要传入一个double类型的参数,如果要将一个其他类型的数值作为sqrt()函数的参数,可以通过类型转换将其转化为double类型。例如,将一个float类型的数值x作为sqrt()函数的参数,可以使用以下代码进行类型转换:float x = 3.0;double result = sqrt((double)x);在上述代码中,将变...

c语言中√x怎么表示
其语法如下:double sqrt(double x);其中,x为待计算平方根的数,函数返回x的平方根。例如,要计算16的平方根,可以使用以下代码:double x = 16; double result = sqrt(x);需要注意的是,sqrt函数返回的结果是一个double类型的浮点数,如果需要整数结果,可以使用强制类型转换将结果转换为int类型。

c语言的sqrt()怎么用
C语言中sqrt()意思是平方根函数,计算一个非负实数的平方根。 在VC6.0中的math.h头文件的函数原型为double sqrt(double number)。sqrt()函数的输入参数不允许为负数,若输入赋值作为函数入参,将得不到正确的结果。因此在调用函数之前,应检查函数输入参数。

C语言中强制转换数据类型如何将一个实数分离成整数部分和小数部分?
include <stdio.h> include <math.h> int main() { double x=3.1415, intpart; \/\/为变量赋初值 double fractpart = modf(x, &intpart); \/\/求3.1415的小数部分 int intNum=(int)x;printf("%lf的整数部分是:%d,小数部分是:%lf\\n", x,intNum,fractpart);return 0;} ...

c语言中sqrt()函数的输出问题,两种输出为什么是3,0,怎么会不一样
sqrt的返回值类型是double型,你输出的时候用%d当然结果是错的了,可以试试类型转换,把最后一个printf语句改成如下:printf("%d\\n",(int)sqrt(n));

C语言的基本类型在内存中怎么储存的?
C语言的基本类型在内存中以二进制的形式储存的。1、整型数据:所有整数(正负零)在内存中都是以补码的形式存在。对于一个正整数来说,它的补码就是它的原码本身。对于一个负整数来说,它的补码为原码取反再加1。2、字符型数据:把字符的相对应的ASCII码放到存储码单元中,而这些ASCII代码值在计算机...

c语言大神求破。。。 输入一个实型数,输出它整数部分的位数。
将这个浮点数强制为整型赋给一个int型变量,然后用10去除这个int型变量,几次能除到结果为0就是几位。代码如下:include "stdio.h"int main(int argc,char *argv[]){int n,t;double x;printf("Input x(float,x>=0)...\\nx=");if(scanf("%lf",&x)!=1 || x<0 || x>0x7FFFFFFF...

相似回答
大家正在搜