#include<stdio.h> void main(){ int i=5; int a,b; a=++i;//表示i加1后在赋值给a printf("a=%d/n",a);//a=6 b=i++;//表示将i的值赋给b后, b在加1 printf("b=%d/n",b);//b=6 } 二元运算 #include<stdio.h> void main() { int a=1; int b=3; int x; x = (a > b) ? a : b; printf("x=%d/n",x); } #include<stdio.h> void main(){ int a=2,b=4,c=6,x,y; y=(x=a+b),(b+c); printf("y=%d,x=%d",y,x); int i=8; printf("%d/n",++i);//9 printf("%d/n",--i);//8 printf("%d/n",i++);//8 printf("%d/n",i--);//9 printf("%d/n",-i++);//-8 printf("%d/n",-i--);//-9 //a+=5 等价于a=a+5 //x*=y+7 等价于x=x*(y+7) //r%=p 等价于r=r%p /* unsigned x; int p=4; int n=3; int z; z=(x >> (p+1-n)) & ~(~0 << n);//z=3 printf("%d/n",z); */ /* int a=2; int b=5; int c=3; int r=7; int x=9; int y=9; int k=2; int j=1; int z,h,i,w,m,n; m=j/y;//除不尽就为0,除的尽取整 printf("m=%d/n",m);//m=0 z=(a*2)/c;// 与上面一样,不过()有更高的优先级:4/3=1;3/4=0; printf("z=%d/n",z);//z=1 h=(x+r)*8-(a+b)/7;//优先级与上一样128-1=127 printf("h=%d/n",h);//h=127 i=x++&++y; //n=n&0177; //n=76 n=n&~077; //-858993472 //------'&'按位与(and);经常用于屏蔽某些二进制位 printf("n=%d/n",n); printf("i=%d/n",i);//i=8 //----'|'按位或(or) //----'^'按位异或(xor) //----'<<'左移 //----'>>'右移 //----'~'一元运算符,分别操作二进制位上1变0,0变1 w=(++i)-(j++)+(k--); printf("w=%d/n",w);//w=10 */ }