C语言赋值a=b=100
来源:学生作业帮助网 编辑:作业帮 时间:2024/05/11 19:35:55
c语言没有:=这回事
27:B。表达式必须要赋值给一个变量才行。故C错。等号左面必须是变量,故D错。A无此用法。28:D.编译器会先运算W*X,会把w的char类型转换为int,然后再相乘,结果与Z相加,则转换为doubl
a+7=c+b是错的.等号左边只能是变量,不能有常量.例如:7=b;这样赋值是错的
#includeintmain(void){inta=3,b=6,c=9;a=a+7;a+7=b+c;printf("%d%d%d\n",a,b,c);return0;}如果如上编写程序,则无输出;a
以下详细解析.A:正确B:a=7+b+c,a++;在编译器看来这句代码是可以通过编译的,但是!逗号表达式的值是最后一个表达式的值,也就是说,a=a++;a=a++;这句代码存在undefinedbeh
是赋值语句.--------------------------第一个先b=0后a=b所以a也为0--------------------------第二个先比较b与5,相等则a=1不相等则a=0--
逗号表达式从左到右计算,先计算a表达式,再计算b表达式,最后计算c表达式,将逗号表达式的最后的一个表达式赋给C
Y=a/b,也就是Y=4/8=0.5,而float是浮点型的,所以只取前面的整数部分,也就是小数点以前的,小数点以后的都舍去了.希望我的回答能帮助你.再问:这个是那方面的规定?优先级?请指导一下再答:
B吧,其他的都没以;结尾,不能够成为语句呢.祝你好运~_~再问:但他们的答案是A再答:以执行结果为准哈,不要拘泥于大众思维←_←
第一个a=b=58是不对滴,可以这样写a=b;b=58;第二个的话把“,”改为“;”这个就行了不知道我说的对不对啊我C语言很差的
Aa=a+7;//不符合,这不是表达式,是语句Ba=7+b+c,a++//符合,这是逗号表达式Cint(12.3%4)//不符合,12.3不能做%运算Da=a+7=c+b//不符合,a+7不能做左值.
A语法错误:不能连续赋值.B强制类型转换运算符必须用小括号括起来比如(int)(a+b).C不是语句,只是表达式,要用分号才正确.D是自减语句,等同i=i-1.正确的确是D.再问:连续赋值其实可以的,
少个分号也是一个错误,但可能不是楼主真正想问的错误.依楼主题意,这是一个赋值语句,既然是赋值语句,那么也就是说变量a还没有初始,因此你的这个语句就是错误的.a=(7+b,b++,a+7)假设b是有初值
A错,不能过表达式赋值B对C对D错,不能过表达式赋值
A,B错误:常数不能作为左值.C,D正确:逗号表达式.如果非要纠结出一个答案,选C吧,D少了分号.
C语言可以这样赋值吗?应该是C++吧赋值是从右向左进行的.即先将c的值赋值给b,然后将b的值赋值给a
a=9+b,b++,这是个逗号表达式,先执行a=9+b,然后执行b++;#include#includevoidmain(){inta,b=8;a=b+9,b++;printf("%d,%d\n
是这样的:语句a=a++,i++;是一个逗号表达式;逗号表达式的格式是表达式1,表达式2,表达式3...表达式n逗号表达式的值等于最后一个表达式的值,各个表达式之间可以没联系.所以i++的值就是整个式
D的错误在于一个表达式已经是一个完整语句应用分号结束如a=7+b;c=a+5;除非是在定义时同时对语句赋值才能使用D的写法如inta=7+b,c=a+5;当然在这条语句中b要提前定义好