更多“设有定义int a=1;float f=1.2;char c=‘a’;,则下列表示错误的是A.++a;B.f--;C.c++;D.8++; ”相关问题
  • 第1题:

    ● 已知有变量 data1 定义如下:

    union data

    { int i;

    char ch;

    float f;

    } data1;

    则变量 data1 所占的内存存储空间可表示为 (57) 。

    (57)

    A. sizeof(int)

    B. sizeof(char)

    C. sizeof(float)

    D. sizeof(int)+sizeof(char)+sizeof(float)


    正确答案:C


  • 第2题:

    设有定义int a=1;float f=1.2;char C=a;,则下列表示错误的是( )。 A.++a;B.f一一;SXB

    设有定义int a=1;float f=1.2;char C=a;,则下列表示错误的是( )。

    A.++a;

    B.f一一;

    C.c++;

    D.8++;


    正确答案:D
    ++、--运算符不能用于常量表达式。

  • 第3题:

    变量W_data定义如下:union data_node{float ff'int n;char ch;}W_data;则变量W_data所占的内存存储空间可表示为______。

    A.sizeof(int)
    B.sizeof(char)
    C.sizeof(float)
    D.sizeof(int)+sizeof(char)+sizeof(float)

    答案:C
    解析:
    本题考查C语言编程的基本知识。本题中变量W_data类型为联合。联合中所有数据项占有相同的内存空间。联合体所占的内存存储空间为所包含数据项所占的内存存储空间的最大值。

  • 第4题:

    设有定义:intk=1,m=2;noat f=7;则下列选项中错误的表达式是( )。

    A.k=k>=k

    B.-k++

    C.k%int(f)

    D.k>=f>=m


    正确答案:C
    解析:在C语言中,求余运算符“%”两边的运算对象都应为整型数据,所以需要对变量f进行强制类型转换,正确的写法为k%(int)f。在C语言中,逻辑运算符与赋值运算符、算术运算符、关系运算符之间从高到低的运算优先次序是:!(逻辑“非”)、算术运算符、关系运算符、&&(逻辑“与”)、‖(逻辑“或”)、赋值运算符。根据运算符的优先级与结合性,对于选项A),先计算k>=k的值(为真,即1),再用1对k进行赋值。对于选取项B),先计算k什的值,再对其取负数。对于选项D),先计算k>=f的值(为假,即0),再用0与m进行比较,故最终结果为0。

  • 第5题:

    自动类型转换规定的优先次序是( )。

    A.short,byte,char→long→int→float→double

    B.short,byte,char→int→long―float→double

    C.byte,short,char→long→int→float→double

    D.byte,short,char→int→long→float→double


    正确答案:D