目录
题目
编程实现将数组a中n个元素逆序存放
分析思路
逆序就是将原来的顺序反过来,所以我们只需要将第一个与最后一个调换、第二个与倒数第二个调换……以此类推。
- 定义数组并赋值,用 sizeof 求出数组所占字符长度,除以单位字符长度后得出数组长度。
- for 循环中,用第一个数字与最后一个替换,i++ ,z-- , 界限为数组长度的一半。
- 替换时要 z - 1 ,因为原来 z 是长度,从 1 开始计算,但是在数组中从 0 开始计算。
代码
#include <stdio.h>
#include <string.h>
void main()
{
int i, t, z;
int a[6] = { 8,7,2,6,1,4 };
z = sizeof(a) / sizeof(int);
printf("排序前:\n");
for (i = 0; i < 6; i++)
printf("%d ", a[i]);
printf("\n");
for (i = 0; i < z / 2; i++, z--)
{
t = a[i];
a[i] = a[z - 1];
a[z - 1] = t;
}
printf("排序后:\n");
for (i = 0; i < 6; i++)
printf("%d ", a[i]);
希望这篇文章对大家有用,如有错误请指出,我会改正哒。