itgle.com
参考答案和解析
正确答案:B
选项A为表达式,因此不正确。选项C中“a++”本身就是表达式,无须再赋值。选项D中,在强制类型转换时,类型名应用括号括起来,故选择B选项。
更多“若变量a、i已正确定义,且i已正确赋值,合法的语句是( )。A.a==1B.++iC.a=a++=5# ”相关问题
  • 第1题:

    若变量a,i已正确定义,且i已正确赋值,合法的语句是A.a==1 B.++i; C.a=a++=5; D.a=int(i);


    正确答案:B
    本题主要考查C语言合法语句的定义。
    在选项A中,a==1不是一个合法的语句,因为它没有语句结束标识符“;”,不能说是一条语句,如果作为一个表达式,它是正确的。
    在选项B中,由于变量i已被正确定义并有初值,“++i;”是正确的语句。
    在选项C中,由于正确的赋值语句中,赋值符号的左边不能为常量或表达式,而右边不能为变量或表达式,很明显,“a=a++=5;”违背了赋值语句的原则。
    在选项D中,“a=int(i);”语句是不正确的,在C语言中没有这种表示形式,如果是想将变量i强制转换为整型的操作,应该为“a=(int)i;”。

  • 第2题:

    若变量a、i已正确定义,且i已正确赋值,合法的语句是______。

    A.a==1

    B.++i;

    C.a=a++=5;

    D.a=int(i);


    正确答案:B
    解析:选项D显然是错的,而选项A没有分号结束,不是C语句:a++=5违反了赋值表达式左侧必须为一个变量(不能是常量或表达式)的规定。

  • 第3题:

    若变量a、i已正确定义,且i已正确赋值,合法的语句是______。

    A.a=1

    B.++i;

    C.a=a++=5;

    D.a=int(i);


    正确答案:B
    解析:选项D显然是错的,而选项A没有分号结束,不是C语句;a++=5违反了赋值表达式工侧必须为一个变量(不能是常量或表达式)的规定。

  • 第4题:

    若变量a、i已正确定义,且i已正确赋值,合法的语句是( )。

    A.a==l

    B.++i

    C.a=a++=5

    D.a=int(i)


    正确答案:B
    选项A为表达式,因此不正确,选项C中a++本身就是表达式,无需再赋值,选项D中,在强制类型转换时,类型名应用括号括起来,故选择8选项。

  • 第5题:

    若变量a、i已正确定义,且i已正确赋值,合法的语句是( )。

    A.a==l;

    B.++i;

    C.a=a++=5 ;

    D.a=int(i);


    正确答案:B
    选项A为表达式,因此不正确,选项C中a++本身就是表达式,无需再赋值,选项D中,在强制类型转换时,类型名应用括号括起来,故选择B选项。