若有定义:double a=22;int i=0,k=18;则不符合C语言规定的赋值语句是( )。

admin2021-04-28  30

问题 若有定义:double a=22;int i=0,k=18;则不符合C语言规定的赋值语句是(    )。

选项 A、a=a++,i++;
B、i=(a+k)<:(i+k);
C、i=a%1 1;
D、i=!a;

答案C

解析 自增、自减操作符适用于char、short、int、long、float、double等类型,故选项A正确;赋值操作符“=”的优先级小于比较操作符“<=”,所以选项B等价于:i=((a+k)<=(i+k));,即将后面比较操作符的结果赋值给i,故选项B也正确;“!”是逻辑非运算符,i=!a表示将a表达式的值取反,赋值给i,故选项D也正确;求模运算符“%”的操作数只能是整数,故选项C错误,因此答案选C。
转载请注明原文地址:https://kaotiyun.com/show/rRtp777K
0

最新回复(0)