关于++n 与++n的区别

好多次没搞明白,这次再写一遍:

比如n = 0, a[++n] = x, 这里的++n是先进行++ 然后赋值a【1】 = x  

而a[n++] = x,这个是先运行a[0] = x,然后再++.区别很明显  

下面我用两个小程序来说明:

#include<stdio.h>
#define maxn 105
int a[maxn];
int main()
{
	int x, n = 0;
	while(scanf("%d", &x) == 1)
		a[n++] = x;                  //先赋值a[n] = x,然后再n++ 
	for(int i = n-1; i >= 1; i--)    //这里的i = n-1 要小心,建议手写一下过程。 
		printf("%d ", a[i]);                                  //因为是从a[0]开始的 
	printf("%d\n", a[0]);            //额外要输出第一个值a[0] 
	return 0;
}
#include<stdio.h>
#define maxn 105
int a[maxn];
int main()
{
	int x, n = 0;
	while(scanf("%d", &x) == 1)
		a[++n] = x;               //先加1然后再赋值.也就是没有a[0],从a[1]开始   
	for(int i = n; i >= 1; i--)    
		printf("%d ", a[i]);                                   
	//printf("%d\n", a[0]);            
	return 0;
}

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值