老刘氓同学
2019-01-15 22:57
为什么例题里加注释那行a+1不改变结果啊?之前的a++那些就都改变了啊
没有赋值
#include<stdio.h>
int main(){
int a = 100;
//++a是先运算后再取结果的a值;
//a++是先取a值在运算;
printf("%d\n",a++);//先取a值为100,a加一 ,得到a值结果为101
printf("%d\n",++a);//此时a自增后的值为101,先运算101+1=102,后取结果a值为102
printf("%d\n",--a);//a取值为102-1=101 ,先运算后取结果为101
printf("%d\n",a--);//a取值为101-1=100,先取值后运算,a值不变为101
printf("%d\n",a+1);//a值经过自减后,a取值为100,100+1=101,a值为101
printf("%d\n",a);//a值经过自减后,a取值为100,输出100 ,a+1的值不带入a中
return 0;
}
#include<stdio.h>
int main(){
int a = 100;
printf("%d\n",a++);//取值为100,a加一
printf("%d\n",++a);//a取值为101+1=102,结果也为102
printf("%d\n",--a);//a取值为102-1=101 ,结果为101
printf("%d\n",a--);//a取值为101减一 ,结果为101
printf("%d\n",a+1);//结果为101,a仍为100
printf("%d\n",a);//输出100
return 0;
}
C语言入门
926210 学习 · 20797 问题
相似问题