C语言实现快速翻转数组的顺序

Posted Engineer-Bruce_Yang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言实现快速翻转数组的顺序相关的知识,希望对你有一定的参考价值。

#include <stdio.h>

void Reverse(int *p , int size)
{
    int i  , tmp;
    for(i = 0 ; i < size/2 ; i++)
    {
         tmp = p[i] ; 
         p[i] = p[size-1-i] ; 
         p[size-1-i] = tmp ;    
    }    
}
            
int main(void)
{

    int i ;
    int buffer[] = {1,2,3,4,5,6,7} ;
    Reverse(buffer,7);
    for(i = 0 ; i < 7 ; i++)
    {
        printf("buffer[%d]:%d\n",i,buffer[i]);
    }
    while(1);
	getchar();
	return 0 ;	
} 
它的运行结果就是把数组从7开始往1这个方向遍历,也就是输出是倒序的。那么有什么用了?在嵌入式开发中,比如我们曾经写过的单片机花样流水灯,我们通常会写个数组从前往后走灯。如果先从前往后,再从后往前就可以用到这样的一个算法啦,非常简单,也非常好理解。

以上是关于C语言实现快速翻转数组的顺序的主要内容,如果未能解决你的问题,请参考以下文章

翻转句子中单词的顺序 C语言

C语言调整数组顺序使奇数位于偶数前面

数据结构--顺序表的实现(c语言实现)

数据结构--顺序表的实现(c语言实现)

C语言,快速排序算法

C语言用数组(顺序表)实现大小固定的队列的方法