main()
{
int x=2,y,z;
y=(++x)+(x++)+(++x);
z=(x--)+(--x)+(x--);
printf("x=%d,y=%d,z=%d\n",x,y,z);
}
是怎么算出x=2,y=12,z=12的.
谢谢!
[此贴子已经被作者于2007-4-14 11:47:36编辑过]
a++是先保留a的值再自增
++a是先自增再计算新值
例:
#include<stdio.h>
void main()
{
int a = 5;
printf("a++=%d\n",a++); //先显示a的值再自增,就是说先输出a=5在增加到a=6
printf("++a=%d\n",++a); //先自增再显示a,a=6后自增后为7
}
//所以结果显示 5 7
结果是x=2,y=10,z=12吧;你可以这样试一下,
#include<iostream>
using namespace std;
void main()
{
int x=2,y,z;
y=(++x);
z=(x--)+(--x)+(x--);
printf("x=%d,y=%d,z=%d\n",x,y,z);
}
#include<iostream>
using namespace std;
void main()
{
int x=2,y,z;
y=(++x)+(x++);
z=(x--)+(--x)+(x--);
printf("x=%d,y=%d,z=%d\n",x,y,z);
}
#include<iostream>
using namespace std;
void main()
{
int x=2,y,z;
y=(++x)+(x++)+(++x);
z=(x--)+(--x)+(x--);
printf("x=%d,y=%d,z=%d\n",x,y,z);
}
看结果就知道了,++,--的用法我想LH应景讲的很清楚了
[此贴子已经被作者于2007-4-14 11:55:27编辑过]