C语言自增自减运算符

题目是: int  a=3,b,c;

         b=(a++)+(a++)+(a++);

         c=(++a)+(++a)+(++a);

a、b、c的最终结果是多少?

解答:此道题目考察的是自增自减运算符的灵活运用。

作用是使变量的值增加1或是减少1,例如:

++i , --i;(在使用i之前,先使i的值加(减)1)

i++ , i--;(在使用i之后,先使i的值加(减)1)

对于++i,和i++,来看都是相当于i=i+1;不同之处在于是使用前加1还是使用后加1,分析一下赋值语句:

i的原值等于3:

1:j=++i; (i的值先变成4,再赋值给j,这样i和j的值都是4)

2: j=i++;(先将i的值3赋值给j,j的值就是3,然后i的值再加1,变成4,此时i=4,j=3)

又例如:i=3;

printf("%d",++i);   输出结果为4。

若改为:printf("%d",i++);   输出结果就是3.(输出完了之后i的值变成来4)

注意:自增自减运算符只能用于变量,不能用于常量或是表达式;结合方向是自右至左。

(第一道题目答案是:a=9,b=12,c=24)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值