为了账号安全,请及时绑定邮箱和手机立即绑定

还是++a与a++

#include <stdio.h>
int main()
{
    // 定义变量sum, num
    int sum, num; 
    sum = 0;
    for(num = 0;num<=10;++num) //for循环条件与num的变化值
    {
     sum=sum+num;//计算每次数字之间的和sum
    }
    printf("10以内数的和为:%d", sum);
    return 0;
}

#include <stdio.h>
int main()
{
    // 定义变量sum, num
    int sum, num; 
    sum = 0;
    for(num = 0;num<=10;num++) //for循环条件与num的变化值
    {
     sum=sum+num;//计算每次数字之间的和sum
    }
    printf("10以内数的和为:%d", sum);
    return 0;
}


在执行时的具体区别在哪里呀

正在回答

2 回答

++num是先运算再取值,也就是先+1,再去看num是几,

num++是先取值再运算,也就是先看num是几,再去+1

还不明白的话,可以看http://www.imooc.com/code/5136

0 回复 有任何疑惑可以回复我~

第一个从num=1开始加,第一个从num=0开始加

0 回复 有任何疑惑可以回复我~
#1

yaya在哪呢 提问者

为什么第一个是从num=1开始呢,,,不应该也是从num=0→num<=10→sum=sum+num→++num,这样么?
2016-03-26 回复 有任何疑惑可以回复我~
#2

AUVc

回复 yaya在哪呢 抱歉,我之前的回答错了。 对于这一题,二者是没有区别的,都是从0开始。一般情况下效果也都一样。 我遇到的特殊情况只有 #include<stdio.h> int main() { int a=0; printf("%d\n",a++); int b=0; printf("%d\n",++b); return 0; } 前一个输出0,后一个输出1
2016-03-27 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926207    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

还是++a与a++

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信