C++问题,10 4 sqrt(9.0)5什么意思

2020-11-22 16:39:48 字数 6106 阅读 1496

1楼:张博

这是一个浮点类型的结果,sqrt()为开更号函数。除法,乘法具有相同的优先级,从左到右依此计算,即为1.5f。

2楼:村雨

数值类型应该是double类型。

结果是1.5

3楼:匿名用户

类型double 值1.5

4楼:匿名用户

double类型的。。。。。。。。。。。。。。。。

5楼:郦鹍拓跋湛英

你的库文件math.h里面的sqrt()函数的参数有两种,aqrt(double

value),

或者aqrt(float

value),而你用的是aqrt(5),找不到匹配项。

因为c++支持重载函数,如果参数不匹配那么就认为找不到该函数。

而c不支持重载,所以会自动将你的5转换成浮点数再运算,就不报错了。

正确的做法,将aqrt(5)改为sqrt(5.0)

c++表达式18/4*sqrt(4.0)/5值的数据类型是(). 怎么做

6楼:匿名用户

1. 这个牵涉到强制转化问题,有个优先级,低精度的和高精度的数据运算时,把低精度的转化为高精度的数据,结果是高精度的数据2. 由于sqrt返回值是double类型,在这个表达式中double是最高精度

3. 所以结果应该是double类型

7楼:

=4*2.0/5=8.0/5=1.600000。

8楼:匿名用户

应该是float类型

9楼:翠代秋毓瑰

18/4*sqrt(4.0)/5

按优先级分为:

(1)18/4

整数除以整数

用“整除”得4

--int

型(2)sqrt(4.0)

得2.0

--double

型(3)4*

2.0得

8.0--

double

型(4)

8.0/5得

1.6--

double

型数据类型是

double,

数值是1.6

sqrt( -4 ) * sqrt( -9 ) = ?

10楼:匿名用户

sqrt(-4)=2i,sqrt(-9)=3i,2i*3i=6*i=-6.

(i=-1)

c++中的sqrt是什么意思?

11楼:匿名用户

math.h 数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有:

1 三角函数

double sin (double);

double cos (double);

double tan (double);

2 反三角函数

double asin (double); 结果介于[-pi/2, pi/2]

double acos (double); 结果介于[0, pi]

double atan (double); 反正切(主值), 结果介于[-pi/2, pi/2]

double atan2 (double, double); 反正切(整圆值), 结果介于[-pi/2, pi/2]

3 双曲三角函数

double sinh (double);

double cosh (double);

double tanh (double);

4 指数与对数

double exp (double);

double pow (double, double);

double sqrt (double);

double log (double); 以e为底的对数

double log10 (double);

5 取整

double ceil (double); 取上整

double floor (double); 取下整

6 绝对值

double fabs (double);

7 标准化浮点数

double frexp (double f, int *p); 标准化浮点数, f = x * 2^p, 已知f求x, p ( x介于[0.5, 1] )

double ldexp (double x, int p); 与frexp相反, 已知x, p求f

8 取整与取余

double modf (double, double*); 将参数的整数部分通过指针回传, 返回小数部分

double fmod (double, double); 返回两参数相除的余数

source: 《c & c++ code capsules》

不单单是c++中有sqrt,计算机语言都封装了math

sqrt是开平方,求平方根.

c++ |=是什么意思

12楼:匿名用户

|=是位操作运算符的一种,其形式为:

a|=b

代表的含义为a=a|b;即把a和b做按位或(|)操作,结果赋值给a。

按位或的计算规则为:

1 逐位进行计算;

2 计算数的同位上值,如果均为0,则结果对应位上值为0;

3 除2中情况外,结果对应位上值为1。

如 char a = 0x12, b = 0x34;

a|=b = 0x12|0x34

写为二进制为:

b00010010

b00110100

结果为b00110110

即0x36。

13楼:匿名用户

mfc是微软基础类库的简称,是微软公司实现的一个c++类库,主要封装了大部分的windows api函数,vc++是微软公司开发的c/c++的集成开发环境,所谓集成开发环境,就是说利用它你可以编辑,编译,调试,而不是使用多种工具轮换操作,灵活性较大。有时人们说vc呢也指它的内部编译器,集成开发环境必须有一个编译器内核,要不有什么用,例如devc++其中一个编译器内核就是gcc。

mfc除了是一个类库以外,还是一个框架,你应该试过,在vc++里新建一个mfc的工程,开发环境会自动帮你产生许多文件,同时它使用了mfcxx.dll。xx是版本,它封装了mfc内核,所以你在你的**看不到原本的sdk编程中的消息循环等等东西,因为mfc框架帮你封装好了,这样你就可以专心的考虑你程序的逻辑,而不是这些每次编程都要重复的东西,但是由于是通用框架,没有最好的针对性,当然也就丧失了一些灵活性和效率但是mfc的封装很浅,所以效率上损失不大,灵活性还可以,虽然也有很多缺陷,但还是一个比较好的东西,个人以为,不逊色于kfc

14楼:匿名用户

@表示忽略转义符,比如说你想保存一个"\sample\myfile.txt"到变量str中,原本就要写成

string str="\\sample\\myfile.txt";

加了@之后就可以直接写成

string str = @"\sample\myfile.txt";

15楼:匿名用户

|= 表示本符号前后的值“位或后再把运算结果赋值”给符号前的变量。

16楼:匿名用户

这是c语言的逻辑运算符:异或

只有两个操作数上相对应的位都是0时,其运算结果相对应的位才是0,否则为1。

比如01111001|00101000=

01111001

00101000

=01111001

a|=b

即a=a|b。新的a 等于 原来的a|b。

17楼:匿名用户

"++"在c++(c)语言中是一种运算符,增量运算符,它运算的结果就是对操作数的值增加1。

这个运算符以两种方式出现。1)++出现在它作用的变量前面,例如你的问题++i;2)++出现在它作用的变量后面。这两种模式的区别在于值的增加这一动作发生的时间是不同的。

18楼:美眉是我

|表示按位或,得到的是一个数值,不像||是或运算得到一个逻辑结果为真或者为假。

c++中//!是什么意思

19楼:匿名用户

一行内//后面的全是注释(包括那个!是注释部分),就是编程人员的说明,没有其他意思

20楼:匿名用户

“//”这是注释符,注释符后面的内容是对程序的解释或者说明,不是程序体的一部分

21楼:匿名用户

//后面的确全是注释,但//!的含义和c++语法无关,是程序员

约定俗成的:表示这一行语句会引发编译错误。在codeblocks ide中,被//注释掉的语句会被冲蚀,而//!注释掉的语句则会高亮,以引起程序员的警惕。

22楼:醉伯伊

“//”后是对程序语言的注释,只作用于这一行

23楼:匿名用户

以“//”号开始的一行字符为c/c++注释。因此“//!”是注释。

24楼:

如果出现在""代表这是字符串的一部分,具体含义当然也可能是任何了

出现在其他源文件里面//代表注释,!是注释的内容,我觉得这只是一个提醒作用而已,就算写//?,//呵呵,//嘿嘿,//哈哈,一样只是一个注释的意思而已

c++中四个点代表什么意思

25楼:匿名用户

表示类的成员。(你说的是两个冒号“:”吧)如类ca中有成员int a;

则:ca::a表示ca类中的成员a;

举个例子:

class ca

;那么:函数int b();的定义就必须是这样的:

int ca::b()

26楼:

同意楼上!!!!!!

c语言数学函数sqrt()输出问题

27楼:止语

printf("%d\n",sqrt(9)); //为什么这一行输出的是0,而不是3 ?

sqrt(9) 函数返回类型为 double,printf 函数是一个很呆板的函数,%d 如果接收 double 类型的数据,就只显示 0;两种方法更改:%d 改成 %ld ; sqrt(9) 改成 (int)sqrt(9)。

28楼:灰色小测

因为sqrt(9)是double型数据,用%d输出的时候,输出的都是0,应该用 %lf 输出。

29楼:匿名用户

#include

#include

intmain()

因为sqrt的原形是double sqrt(double)double和int在内存的布局造成的结果差别很大

30楼:匿名用户

printf("%d\n",(int)sqrt(9));

c++sqrt()函数与sqrtf()函数有什么区别?

31楼:框框黑色

sqrt函数有三种形式

double sqrt(double x);

float sqrtf(float x);

long double sqrtl(long double x);

三种形式的区别只是参数和返回值的精度不同,float精度最低,double较高,long double精度最高。

一般来说,只要用sqrt()就足够了,但因为double类型精度比较高,所以运算所消耗的时间较长,因此在要求较高效率,较低精度的情况下,就可以用sqrtf()这个函数了。

如果精度要求非常高,可以用sqrtl()函数。

32楼:敖子鹿妍晨

double

sqrt(double

x);float

sqrtf(float

x);可以发现他们针对的数据类型不一样。

c++中是什么意思,在c++中|=是什么意思

1楼 铁血战士 a b 这句相当于 a a b 所谓的复合求值。表示a和b逻辑或之后,把结果在赋给a 2楼 乔显萍 两边得值做或运算, 例如 2 3 10 2的二进制 11 3的二进制 11 3的二进制 即打印得结果为3 只要有一个为1,结果就为1 与运算 2 3 为 全为1,结果才为1,否则为0,...

c++程序中是什么意思,在c++语言中,^是什么意思

1楼 apple林 按位异或 c 提供了六种位运算运算符 这些运算符可能只允许整型操作数,即char short int和long,无论signed或者unsigned。 按位and 按位or 按位异或 左移 右移 求反 一元运算 2楼 申江渔夫 通过将符号 放在类型名称的后面来指定该类型的句柄 3...

C++里的继承是什么意思,这个c++类的继承是什么意思

1楼 化冻 继承是指一个对象直接使用另一对象的属性和方法。事实上,我们遇到的很多实体都有继承的含义。例如,若把汽车看成一个实体,它可以分成多个子实体,如 卡车 公共汽车等。这些子实体都具有汽车的特性,因此,汽车是它们的 父亲 ,而这些子实体则是汽车的 孩子 。如果一个类a继承自另一个类b,就把这个a...