作业帮 > 综合 > 作业

求C语言题,我是初学者,

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/23 06:14:36
求C语言题,我是初学者,
若变量均已正确定义并赋值,以下合法的C语言赋值语句是
A)x=y==5;
B)x=n%2.5;
C)x=n=1
D)x=5=4=1;
为啥
C若作为一个表达式是否合法
为啥
A中那连续的两个赋值号是怎么回事
求C语言题,我是初学者,
A)x=y==5;
// 正确,x=y==5等价于x=(y==5), ==号是判断两端是否相等,若右边等于左边,则y==5表达式的值为1,若不等,则为0,假如相等,就等于说把1赋值给了x,若不等就是说把0赋值给x.=号是赋值,右边的值给左边,==是判断,右边是否等于左边.==的优先级高于=,故先算==再=.故x=y==5同等于 x=(y==5);
B)x=n%2.5;
//错误,%是模除符号,就是求余数用的,用这个符号,两边必须是整型,说白了两边都得是整数,不能是小数.
C)x=n=1
//很明显,缺少分号,一个语句的最基本要求就是,以分号结束.如果做为一个表达式是合法的,x=n=1同等于 x=1,n=1;
D)x=5=4=1;
//错误,赋值的最基本要求,被赋值的一定是变量,不能是常量,也就是说左边是变量,右边可以是常量,或者已经被赋值的变量, 因为5 4 都不是变量,故错误.