|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
int main(void)
{
int a,b;
a = 9;
b = (++a)+(++a);
printf("%d",b);
return 0;
}
中为什么计算出来的结果b=22?不应该是20?
这么久没见你结帖,你是对加加减减运算不熟悉吧?给你一个程序,运行试试看
- #include<stdio.h>
- int main()
- {
- int j = 3,i = 5;
- printf("j = 3, i = 5\n");
- printf("\n");
- j = j * (i++);
- printf("j = j * (i++) 运算后的结果是:%d, %d",j,i);
- printf(" // 先运算,再自加");
- printf("\n");
- j = 3,i = 5;
- printf("\n");
- j = j * (i--);
- printf("j = j * (i--) 运算后的结果是:%d, %d",j,i);
- printf(" // 先运算,再自减");
- printf("\n");
- j = 3,i = 5;
- printf("\n");
- j = j * (++i);
- printf("j = j * (++i) 运算后的结果是:%d, %d",j,i);
- printf(" // 先自加,再运算");
- printf("\n");
- j = 3,i = 5;
- printf("\n");
- j = j * (--i);
- printf("j = j * (--i) 运算后的结果是:%d, %d",j,i);
- printf(" // 先自减,再运算");
- printf("\n");
- j = 3,i = 5;
- printf("\n");
- j = j * (+i);
- printf("j = j * (+i) 运算后的结果是:%d, %d",j,i);
- printf(" // 保持符号再运算");
- printf("\n");
- j = 3,i = 5;
- printf("\n");
- j = j * (-i);
- printf("j = j * (-i) 运算后的结果是:%d, %d",j,i);
- printf(" // 改变符号再运算\n");
- printf("\n");
- printf("单一的 i+ 或单一的 i- // 没有意义,并且系统会报错\n");
- printf("\n");
- }
复制代码
|
|