您的位置:首页 > 其它

【LVL1_5_c】【课后练习】【5】 写一个可以倒置数组元素的函数.

2015-12-26 17:01 295 查看
<span style="font-family: Arial, Helvetica, sans-serif;">思路:</span>
<span style="font-family:Arial, Helvetica, sans-serif;">1.可通过for循环实现。</span>
<span style="font-family:Arial, Helvetica, sans-serif;">2.接下来确定循环次数,通过试验可得到结论,如果如果数组长度为n,则进行n/2次循环即可完成倒置。(数组元素的个数,是偶数还是奇数,都是n/2次)</span>
<span style="font-family:Arial, Helvetica, sans-serif;">3.a表示第一个元素的下标 逐渐递增,b表示最后一个元素的下标 逐渐递减。t作为中间变量 完成交换过程。</span>
<span style="font-family:Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">// ConsoleApplication2.cpp : 定义控制台应用程序的入口</span>
#include "stdafx.h"
#include <cmath>
#include<stdlib.h>
#define N 10

void invert(int array[],int n);

int _tmain(int argc, _TCHAR* argv[])
{

int array
= { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int n = N;

//调用反转数组元素的函数
invert(array,n);

//输出数组查看
for (int acc = 0; acc<N; acc++)
{
printf("%d\n",array[acc]);
}
system("pause");
return 0;
}

//反转数组元素的函数
void invert(int array[], int n)
{
int acc, a, b, t;
a = 0;
b = n - 1;

for (acc = 0; acc <= n / 2; acc++)
{
t = array[a];
array[a] = array[b];
array[b] = t;

++a;
--b;
}
}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: