更多“设有如下变量定义: double a= 3.500000;float b=2.5;int m=2,n=3; 则表达式“(float)(m+n)/2+(int)a%(int)b”的值是( )。A.2.5B.3.5C.4.5D.表达式不正确”相关问题
  • 第1题:

    设有如下变量定义: double a=3.500000;float b=2.5; int m=2,n=3; 则表达式“(float)(m+n)/2+(int)a%(int)b”的值是( )

    A.2.5

    B.3.5

    C.4.5

    D.表达式不正确


    正确答案:B

  • 第2题:

    设变量a是int型,f是int型,i是double型,则表达式10+a+i*f值的数据类型为A.int B.float C.double D.不确定


    正确答案:C
    在本题中,分别定义了一个整型变量a和f、双精度型变量i。然后求表达式10+a+i*f结果的数据类型。
    在C语言中,对应不同类型数据间的运算,将运算结果保存为精度较高的操作数类型,如整型与浮点型操作数据进行相关的运算,运算结果被自动保存为浮点型。在本题给出的运算表达式中,参与运算的操作数精度最高的为双精度型,因此,最后的计算结果应该被保存为双精度类型,本题正确的答案选C。

  • 第3题:

    若有定义语句:“int a=10;double b=3.14;”,则表达式A+a+b值的类型是( )。

    A.char

    B.int

    C.double

    D.float


    正确答案:C
    如果是字符数据和整数运算将先转换成整型再进行运算,当整型和浮点数进行运算,为了提高精度将会转化为双精度类型然后进行运算,所以此题结构的数值类型为double类型。

  • 第4题:

    设有定义nit a:float f; double int i,则表达式10+'a'+i+f值的数据类型是( )

    A.int

    B.float

    C.double

    D.不确定


    正确答案:C

  • 第5题:

    若有定义:int a=4, b=5;float x=3.4,y=2.1;,则下列表达式的值为( )。 (float) (a+b)/2+(int)x%(int)y

    A.5.5

    B.55

    C.5.5

    D.55


    正确答案:C
    解析:在计算(float)(a+b)/2时,由于通过强制类型转换将(a+b)转换成了float型,所以应先将2转换成float型,再进行计算,得 4.500000。
      在计算(int)x%(int)y时,先将x和y通过强制类型转换成int型,再进行求余运算,得1。
      又因为4.500000是float型,所以将1和它相加时,先将1换成float型,再计算,得到5.500000。
    注意:类型转换的一般规则是:低级类型服从高级类型,并进行相应的转换。数据类型的级别由低到高的排序表示为:char→ int→unsigned→long→float→double。

  • 第6题:

    若有定义:int a=2,b=3;float x=3.5,y=2.5;则下面表达式的值为______。(float)(a+b)/2+(int)x%(int)y

    A.3.5

    B.35

    C.3.5

    D.35


    正确答案:C

  • 第7题:

    若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为( )。A.A. float SXB

    若有以下定义:

    char a;int b;

    float c;double d;

    则表达式a*b+d-c值的类型为( )。

    A.A. float

    B.int

    C.char

    D.double


    正确答案:D
    在表达式a*b+d-c中,double的类型最高,C语言中,由低类型自动向高类型转换,所以最后的结果一定是double型。

  • 第8题:

    试题14

    若有定义语句:int a=10; double b=3.14; , 则表达式‘A’+a +b值的类型是()

    A.char

    B.int

    C.double

    D.float


    正确答案:C
    试题14分析
    数据自动转换时,按照数据长度增加的方向进行转换,以保证精度不降低。
    试题14答案
    C

  • 第9题:

    变量x、f、d分别为int,float,double类型的,除了f和d不能等于无穷大和NAN以外值可以任意选取,下面表达式为真的是()

    • A、x==(int)(double)x
    • B、x==(int)(float)x
    • C、d==(double)(float)d
    • D、(f+d)-f==d

    正确答案:A

  • 第10题:

    如果定义有double,x;float,y;int,m,则表达式x*y-m的类型为()

    • A、double
    • B、float
    • C、int
    • D、short

    正确答案:A

  • 第11题:

    若有定义:int a=2,b=3;floatx=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值是()

    • A、3.5
    • B、3.0
    • C、2.5
    • D、2.0

    正确答案:A

  • 第12题:

    单选题
    变量x、f、d分别为int,float,double类型的,除了f和d不能等于无穷大和NAN以外值可以任意选取,下面表达式为真的是()
    A

    x==(int)(double)x

    B

    x==(int)(float)x

    C

    d==(double)(float)d

    D

    (f+d)-f==d


    正确答案: D
    解析: 暂无解析

  • 第13题:

    若有定义: int a=7;float x=2.5,y=4.7;则表达式x+a%3,(int)(x+y)%2/4的值是( )。

    A.2.5

    B.2.75

    C.3.5

    D.0


    正确答案:A
    解析:x+y的值为实型7.200000,经强制类型转化成整型7。a%3的值为1,1*7的值为7,7%2的值为1。1/4的值为0,而非0.25,再与实型x相加,最终得结果为2.500000。

  • 第14题:

    若有以下定义: char a;int b; float c;double d; 则表达式a*b+b-c值的类型为( )。A. floatSX

    若有以下定义: char a;int b; float c;double d; 则表达式a*b+b-c值的类型为( )。

    A. float

    B.int

    C.char

    D.double


    正确答案:D
    在表达式a*b+d-c中,double的类型最高,C语言中,由低类型自动向高类型转换,所以最后的结果一定是double型。

  • 第15题:

    若有定义:int x=1,y=2;float a=3.7,b=2.1;则(x+y)%2+(int)a/(int)b表达式的值为( )。


    正确答案:2
    2 解析:本题考查表达式的运算。因为x=1,y=2,所以表达式(x+y)%2=3%2=1,(int)a/(int)b=(int)}(3/2)=1,因此整个表达式的结果为(x+y)%2+(int)a/(int)b=1+1=2。

  • 第16题:

    若有定义:int a=2,b=3;floatx=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值是()

    A.3.5

    B.3.0

    C.2.5

    D.2.0


    参考答案:A

  • 第17题:

    设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为A.int B.float C.double D.不确定


    正确答案:C
    根据混合运算规则,如果有一个数据是float型或double型,则其他数据类型先转化为double型,运算的结果最终也是double型。

  • 第18题:

    设有以下变量定义,并已赋确定的值: char w; int x; float y; double z; 则表达式:w*x+z-y所求得的数据类型为( )。

    A.char

    B.int

    C.float

    D.double


    正确答案:D
    解析:本题考核表达式计算时数据类型的转换。C++中,参加运算的各个数据类型都转换成数据类型最长的数据类型,然后计算,表达式值的类型也就是数据长度最长的数据类型,在char、int、float、double中,double型的数据最长,所以表达式所求得的数据类型为double。

  • 第19题:

    有如下定义:float a=1.0f;double b=2.0;则表达式a+b的值的数据类型为()。

    A.float

    B.double

    C.char

    D.int


    答案:B

  • 第20题:

    switch(表达式)语句中的“表达式”,允许的类型是()。

    • A、float,int
    • B、float,int,char
    • C、int,char
    • D、char,double

    正确答案:C

  • 第21题:

    假定变量x,f和d的类型分别为int 、float和double。下面表达式的值总是为1的是()

    • A、x==(int)(float)x
    • B、d==(double)(float)d
    • C、f==(float)(double)f
    • D、(f+d)-f==d

    正确答案:A

  • 第22题:

    若已定义   struct num{    int a;    int b;   float f;  } n={1,3,5.0};  struct num *p=&n;  则表达式p->b/n.a*++p->b的值是  ①  ,表达式(*p).a+p->f的值是  ②  。


    正确答案: ①12
    ②6.0

  • 第23题:

    单选题
    若有定义:int a=2,b=3;floatx=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值是()
    A

    3.5

    B

    3.0

    C

    2.5

    D

    2.0


    正确答案: A
    解析: 暂无解析

  • 第24题:

    单选题
    假定变量x,f和d的类型分别为int 、float和double。下面表达式的值总是为1的是()
    A

    x==(int)(float)x

    B

    d==(double)(float)d

    C

    f==(float)(double)f

    D

    (f+d)-f==d


    正确答案: A
    解析: 暂无解析