‘壹’ C语言里面 a=b; b=c; c=d; 是什么意思顺序什么样
a=b;
//把b的值赋给a
b=c;
//把c的值赋给b
c=d;
//把d的值赋给c
赋值顺序:自右向左
执行顺序:从上到下
下面的结果是:2
3
4
4
自己好好消化消化
#include
void
main()
{
int
a=1,b=2,c=3,d=4;
a=b;
b=c;
c=d;
printf("%d
%d
%d
%d",a,b,c,d);
}
‘贰’ 在C语言中运算符的运算顺序是如何的
运算符也有个运算顺序问题,先算乘除再算加减。单目正和单目负最先运算。取模运算符(%)用于计算两个整数相除所得的余数。例如:
a=7%4;
最终a的结果是3,因为7%4的余数是3。
那么有人要问了,我要想求它们的商怎么办呢?b=7/4;
这样b就是它们的商了,应该是1。
也许有人就不明白了,7/4应该是1.75,怎么会是1呢?这里需要说明的是,当两个整数相除时,所得到的结果仍然是整数,没有小数部分。要想也得到小数部分,可以这样写7.0/4或者7/4.0,也即把其中一个数变为非整数。
那么怎样由一个实数得到它的整数部分呢?这就需要用强制类型转换了。例如:a=(int)(7.0/4);
因为7.0/4的值为1.75,如果在前面加上(int)就表示把结果强制转换成整型,这就得到了1。那么思考一下
a=(float)(7/4);
最终a的结果是多少?
单目减运算符相当于取相反值,若是正值就变为负值,若是负数就变为正值。单目加运算符没有意义,纯粹是和单目减构成一对用的。