c语言中给b赋值b=0X12345678是什么意思?输出b=%x,为何是78?
来源:学生作业帮助网 编辑:作业帮 时间:2024/10/06 20:26:32
c语言没有:=这回事
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
是赋值语句.--------------------------第一个先b=0后a=b所以a也为0--------------------------第二个先比较b与5,相等则a=1不相等则a=0--
逗号表达式从左到右计算,先计算a表达式,再计算b表达式,最后计算c表达式,将逗号表达式的最后的一个表达式赋给C
虽然在很多方面数组和指针都能处理同样的问题,但他们之间有个本质的不同.数组b是指针常量,不是变量.所以想a=p、a++和a+=2这样的表达式都是非法的,不能改变指针常量b的值指针运算是c与语言的重要特
Y=a/b,也就是Y=4/8=0.5,而float是浮点型的,所以只取前面的整数部分,也就是小数点以前的,小数点以后的都舍去了.希望我的回答能帮助你.再问:这个是那方面的规定?优先级?请指导一下再答:
第一个a=b=58是不对滴,可以这样写a=b;b=58;第二个的话把“,”改为“;”这个就行了不知道我说的对不对啊我C语言很差的
a=a*(b+3)再问:只有这一个?再答:只用这几个就只能这样。当然还有移位,但对于这个不实用
少个分号也是一个错误,但可能不是楼主真正想问的错误.依楼主题意,这是一个赋值语句,既然是赋值语句,那么也就是说变量a还没有初始,因此你的这个语句就是错误的.a=(7+b,b++,a+7)假设b是有初值
(0,1)是逗号表达式,这个表达式的值就应该是最右边这项的值1b=(-1)&&(0,1)就相当于b=(-1)&&1;由于-1和1都是非0值&&运算之后肯定为真,为真则值为1所以b=1;
不能那样理解.逗号表达式是已经声明过的变量合法组成的多个有效运算表达式用逗号隔开,而inta=1,b=2;只能有一种解释,那就是声明和初始化变量时可以把多个相同类型的变量用逗号隔开写在同一个类型符后面
是数组指针,它实际上是指针常量,可以理解为constint*b.所以它的指向是不允许被修改的,++b操作违反了这个规定,运行后会修改b的指向,是不被允许的.所以C不正确.
就是将右边的表达式求值,然后赋值给c.可以理解为:if(b++-a{c=c;}else{if(b-a>0){c=1;}else{c=0;}}
C语言可以这样赋值吗?应该是C++吧赋值是从右向左进行的.即先将c的值赋值给b,然后将b的值赋值给a
A,4=M:这是错误的表达式B,M=-M:这个赋值语句实现将M的符号改变C,B=A-C:只要A,C是变量,那么这个语句就是一个赋值语句D,x+y=0;这只能算是一个表达式,不是赋值语句
是这样的:语句a=a++,i++;是一个逗号表达式;逗号表达式的格式是表达式1,表达式2,表达式3...表达式n逗号表达式的值等于最后一个表达式的值,各个表达式之间可以没联系.所以i++的值就是整个式
D的错误在于一个表达式已经是一个完整语句应用分号结束如a=7+b;c=a+5;除非是在定义时同时对语句赋值才能使用D的写法如inta=7+b,c=a+5;当然在这条语句中b要提前定义好
括号里为逗号表达式逗号表达式:先计算表达式1的值,再计算表达式2的值,整个表达式取表达式2的值=,C语言称为赋值号.格式:变量=表达式.功能:将赋值号右面表达式的值赋给左边的变量所以这条语句是把逗号表
选C,C是逗号表达式.A中有两个赋值语句是错的,B中==是判断语句不是赋值语句