关于i++和++i的27种组合输出

本文章是一段c语言小程序,用printf()函数一起输出i、i++和++i,分别在gcc和vc中执行的不同结果

 

我的运行环境是:

操作系统:Fedora release 8 (Werewolf)

内核版本: 2.6.23.1-42.fc8

gcc 版本: 4.1.2

 

以及VC6.0

 

1----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i=%d    i=%d    i=%d/n",i,i,i);
        return 0;
}

gcc输出结果:i=1    i=1    i=1

VC6.0输出结果:i=1    i=1    i=1

 

2-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i=%d    i=%d    i++=%d/n",i,i,i++);
        return 0;
}

gcc输出结果:i=2    i=2    i++=1

VC6.0输出结果:i=1    i=1    i++=1

 

3-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i=%d    i=%d    ++i=%d/n",i,i,++i);
        return 0;
}

gcc输出结果:i=2    i=2    ++i=2

VC6.0输出结果:i=2    i=2    ++i=2

 

4-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i=%d    i++=%d    i=%d/n",i,i++,i);
        return 0;
}

gcc输出结果:i=2    i++=1    i=2

VC6.0输出结果:i=1    i++=1    i=1

 

5-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i=%d    i++=%d    i++=%d/n",i,i++,i++);
        return 0;
}

gcc输出结果:i=3    i++=2    i++=1

VC6.0输出结果:i=1    i++=1    i++=1

 

6-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i=%d    i++=%d    ++i=%d/n",i,i++,++i);
        return 0;
}

gcc输出结果:i=3    i++=2    ++i=3

VC6.0输出结果:i=2    i++=2    ++i=2

 

7-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i=%d    ++i=%d    i=%d/n",i,++i,i);
        return 0;
}

gcc输出结果:i=2    ++i=2    i=2

VC6.0输出结果:i=2    ++i=2    i=1

 

8-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i=%d    ++i=%d    i++=%d/n",i,++i,i++);
        return 0;
}

gcc输出结果:i=3    ++i=3    i++=1

VC6.0输出结果:i=2    ++i=2    i++=1

 

9-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i=%d    ++i=%d    ++i=%d/n",i,++i,++i);
        return 0;
}

gcc输出结果:i=3    ++i=3    ++i=3

VC6.0输出结果:i=3    ++i=3    ++i=2

 

10-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i++=%d    i=%d    i=%d/n",i++,i,i);
        return 0;
}

gcc输出结果:i++=1    i=2   i=2

VC6.0输出结果:i++=1    i=1    i=1

 

11-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i++=%d    i=%d    i++=%d/n",i++,i,i++);
        return 0;
}

gcc输出结果:i++=2    i=3   i++=1

VC6.0输出结果:i++=1    i=1    i++=1

 

12-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i++=%d    i=%d   ++i=%d/n",i++,i,++i);
        return 0;
}

gcc输出结果:i++=2    i=3   ++i=3

VC6.0输出结果:i++=2    i=2   ++i=2

 

13-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i++=%d    i++=%d   i=%d/n",i++,i++,i);
        return 0;
}

gcc输出结果:i++=2    i++=1   i=3

VC6.0输出结果:i++=1    i++=1   i=1

 

14-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i++=%d    i++=%d   i++=%d/n",i++,i++,i++);
        return 0;
}

gcc输出结果:i++=3    i++=2   i++=1

VC6.0输出结果:i++=1    i++=1   i++=1

 

15-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i++=%d    i++=%d   ++i=%d/n",i++,i++,++i);
        return 0;
}

gcc输出结果:i++=3    i++=2   ++i=4

VC6.0输出结果:i++=2    i++=2   ++i=2

 

16-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i++=%d    ++i=%d   i=%d/n",i++,++i,i);

        return 0;
}

gcc输出结果:i++=2    ++i=3   i=3

VC6.0输出结果:i++=2    ++i=2   i=1

 

17-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i++=%d    ++i=%d   i++=%d/n",i++,++i,i++);

        return 0;
}

gcc输出结果:i++=3    ++i=4   i++=1

VC6.0输出结果:i++=2    ++i=2   i++=1

 

18-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("i++=%d    ++i=%d   ++i=%d/n",i++,++i,++i);

        return 0;
}

gcc输出结果:i++=3    ++i=4   ++i=4

VC6.0输出结果:i++=3    ++i=3   ++i=2

 

19-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("++i=%d    i=%d   i=%d/n",++i,i,i);

        return 0;
}

gcc输出结果:++i=2    i=2   i=2

VC6.0输出结果:++i=2    i=1   i=1

 

20-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("++i=%d    i=%d   i++=%d/n",++i,i,i++);

        return 0;
}

gcc输出结果:++i=3    i=3   i++=1

VC6.0输出结果:++i=2    i=1   i++=1

 

21-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("++i=%d    i=%d   ++i=%d/n",++i,i,++i);

        return 0;
}

gcc输出结果:++i=3    i=3   ++i=3

VC6.0输出结果:++i=3    i=2   ++i=2

 

22-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("++i=%d    i++=%d   i=%d/n",++i,i++,i);

        return 0;
}

gcc输出结果:++i=3    i++=1   i=3

VC6.0输出结果:++i=2    i++=1   i=1

 

23-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("++i=%d    i++=%d   i++=%d/n",++i,i++,i++);

        return 0;
}

gcc输出结果:++i=4    i++=2   i++=1

VC6.0输出结果:++i=2    i++=1   i++=1

 

24-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("++i=%d    i++=%d   ++i=%d/n",++i,i++,++i);

        return 0;
}

gcc输出结果:++i=4    i++=2   ++i=4

VC6.0输出结果:++i=3    i++=2   ++i=2

 

25-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("++i=%d    ++i=%d   i=%d/n",++i,++i,i);

        return 0;
}

gcc输出结果:++i=3    ++i=3   i=3

VC6.0输出结果:++i=3    ++i=2   i=1

 

26-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("++i=%d    ++i=%d   i++=%d/n",++i,++i,i++);

        return 0;
}

gcc输出结果:++i=4    ++i=4   i++=1

VC6.0输出结果:++i=3    ++i=2   i++=1

 

27-----------------------------------------

#include<stdio.h>
int main()
{
        int i=1;
        printf("++i=%d    ++i=%d   ++i=%d/n",++i,++i,++i);

        return 0;
}

gcc输出结果:++i=4    ++i=4   ++i=4

VC6.0输出结果:++i=4    ++i=3   ++i=2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值