实现数组的逆序存放

今天分享给大家一个实现逆序输出数组的程序。咱们先上代码

#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
#define M 10
int main()
{
   
	int a[M], m, n, temp;
	for (m = 0; m < M; m++)
		scanf("%d", &a[m]);
	m = 0;
	n = M - 1;
	while (m < n)
	{
   
		temp = a[m];
		a[m] =a[n];
		a[n] = temp;
		m++;
		n--;
	}
	for (m = 0; m < M; m++)
		printf("%d ", a[m]);
	return 0;
}

运行结果如图

注意n=M-1.因为下标是从0开始的。
我们来看这个程序,while循环第一次交换了a[0]和a[9],也就是第一位数和第十位数。第二次循环交换了a[1]和a[8],也就是第二位数和第九位数,以此类推,交换过第四位和第六位数后,此时,m=n,不再满足m<n,此时已完成数组的逆序存放。

全部评论

相关推荐

05-30 18:54
武汉商学院 Java
湫湫湫不会java:先投着吧,大概率找不到实习,没实习的时候再加个项目,然后把个人评价和荣誉奖项删了,赶紧成为八股战神吧,没实习没学历,秋招机会估计不多,把握机会。或者说秋招时间去冲实习,春招冲offer,但是压力会比较大
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务