安全防护设施资料包括:C语言问题..菜鸟级别的..

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/28 15:41:45
# include <stdio.h>

void main()
{
int i, j, k;
int m, n, p;

i = 8;
j = 10;
k = 12;

/* 自增在操作数之前 */
m = ++i;
printf("i = %d\n", i);
printf("m = %d\n", m);

/* 自减在操作数之后 */
n = j--;
printf("j = %d\n", j);
printf("n = %d\n", n);

/* 自增、自减的混合运算 */
p = (++m)*(n++)+(--k);
printf("k = %d\n", k);
printf("p = %d\n", p);
}

p的值为什么不是121啊??
晕S了!
谢谢各位了!
有j--的...
可我执行后p的值就是111了...
不信你们可以用 TC 或 C-FREE试一下!
郁闷!

printf("i = %d\n", i);
printf("m = %d\n", m);
运行后i=9,m=9
/*i自加后将值赋给m

printf("j = %d\n", j);
printf("n = %d\n", n);
运行后j=9,n=10
/*j将值赋给m后自减

printf("k = %d\n", k);
printf("p = %d\n", p);
运行后k=11,p=111
/*p=(9+1)*10+(12-1)=111
/*m自加后乘以n(n被乘后再自加),然后加上k自减后的结果.

不好意思,上次关键部分算错了.

printf("i = %d\n", i);
printf("m = %d\n", m);
运行后i=9,m=9
/*i自加后将值赋给m

printf("j = %d\n", j);
printf("n = %d\n", n);
运行后j=9,n=10
/*j将值赋给m后自减

printf("k = %d\n", k);
printf("p = %d\n", p);
运行后k=11,n=112
/*m自加后乘以n(n被乘后再自加),然后加上k自减后的结果.

是啊 没J- 如果是J-- P=10*9+11=101

j-- 没有这个语句吧

9494

我都看不懂~