陈晨 发表于 2014-1-12 16:38:09

菜鸟零基础学习c语言 看教程遇到问题 求帮助

我是新学的零基础学习的 今天看到教程里的一个运算    知道小鱼老师只做了前两个 我明白 后面的两个小弟实在搞不懂求帮助先谢谢各位大大了
#include <stdio.h>

void main()

{
         int i = 8;
               printf("%d\n",++i);    先++ 等于9
               printf("%d\n",--i);      先--等于8
               printf("%d\n",i++);   小弟的理解是 承接上面的i 值也就是8所以打印出来的是8
               printf("%d\n",i--);       i 承接上面运算后的结果9所以打印出来的是9
               printf("%d\n",-i++);    i承接上面运算后额的值 8 所以打印出来的是-8 (这个数值还能对上)
               printf("%d\n",-i--);    i 承接上面运算后的值 -8++ 后应该是-7么?从这开始小弟就不会算了
}
求懂的大大么 帮帮小弟吧   小弟有一颗热爱C语言的心!!





还有就是教程接下来的例题




#include <stdio.h>

void main()
{
inti = 5, j = 5, p,q;
p =(i++)+(i++)+(i++);      
q =(++j)+(++j)+(++j);
printf("%d,%d,%d,%d",p,q,i,j);
}

打印出来的结果是 15   22   8    8   这个例题 小弟 是一点儿也不懂啊 求帮助 先谢谢了

五号智能 发表于 2014-1-16 17:24:50

本帖最后由 五号智能 于 2014-1-16 17:39 编辑

前算增与后自增的实际意义就是,前自增,在表达式之前进行运算,而后自增,是在表达式之后进行运算.
也就是说,
前自增会   影响   表达式的值.
而后自增,    不影响表达式的值.这里有意思的是在for(;;i++){} 循环之中.   循环的每一次迭代,每被看做一次表达式的计算.
千万不要忘记结贴啊~~~~~~~~~~~~~





页: [1]
查看完整版本: 菜鸟零基础学习c语言 看教程遇到问题 求帮助