int a = 016;//016 和 16 不一样!a%= 6-1; a+=a*=a/=3;

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/04 06:36:23
int a = 016;//016 和 16 不一样!a%= 6-1; a+=a*=a/=3;

int a = 016;//016 和 16 不一样!a%= 6-1; a+=a*=a/=3;
int a = 016;//016 和 16 不一样!a%= 6-1; a+=a*=a/=3;

int a = 016;//016 和 16 不一样!a%= 6-1; a+=a*=a/=3;
int a=016;
最高位的0表示这个数是一个八进制的数,
八进制的016相当于10进制的:1*8+6==14
a%=6-1;//相当于a=a%(6-1)=14%5==4;
a+=a*=a/=3;
相当于:
a/=3;
a*=a;
a+=a;
相当于:
a=a/3;
a=a*a;
a=a+a;
由于a%=6-1;运算后a==4
所以
a=a/3==1;
a=a*a==1*1==1;
a=a+a==1+1==2;
所以最后a的值是2