一、标准交换模式

/****

*标准交换模式

*实现数组的逆序,原理就是数组的首尾元素进行交换

***/

#define N 5;

int main(){

int array[N] = {15,20,25,30,35}

int temp; //声明临时变量

int i;

for(i = 0;i<N/2;i++){

//第i个值和第N-i-1个值相交换

temp = array[i];

array[i] = array[N - i - 1];

array[N - i - 1] = temp;

}

printf("逆序:\n");

for(i = 0;i < N;i++){

printf("%d\t",*(array + i));

}

}

二、指针交换模式

/****

*指针交换模式

*实现数组的逆序,原理就是数组的首尾元素进行交换

***/

#define N 5;

int main(){

int array[N] = {15,20,25,30,35}

int temp; //声明临时变量

int i;

int *ptr_array_start = array;

int *ptr_array_end = array + N - 1;

while(ptr_array_start>=ptr_array_end){

//首尾交换,指针分别进行更新

temp = *ptr_array_start;

*ptr_array_start = *ptr_array_end;

*ptr_array_end = temp;

//首元素指针要向后移动

ptr_array_start++;

//末元素指针要向前移动

ptr_array_end--;

}

printf("逆序:\n");

for(i = 0;i < N;i++){

printf("%d\t",*(array + i));

}

}

C数组逆序的更多相关文章

  1. Openjudge计算概论——数组逆序重放【递归练习】

    /*===================================== 数组逆序重放 总时间限制:1000ms 内存限制:65536kB 描述 将一个数组中的值按逆序重新存放. 例如,原来的顺 ...

  2. JS创建一个数组1.求和 2.求平均值 3.最大值 4.最小值 5.数组逆序 6.数组去重 0.退出

    rs = require("readline-sync"); let arr = []; console.log("请输入数组的长度:"); let arr_l ...

  3. 计算概论(A)/基础编程练习2(8题)/6:数组逆序重放

    #include<stdio.h> int main() { // 输入n个整数 ; scanf("%d", &n); // 循环读入元素 while(scan ...

  4. Java数组逆序排列

    //逆序排列原理 /* A: 数组逆序原理* a: 题目分析* 通过观察发现,本题目要实现原数组元素倒序存放操作.即原数组存储元素为{12,69,852,25,89,588},逆序后为原数组存储元素变 ...

  5. Java数组逆序存储

    package review01; import java.util.Arrays; public class review01 { public static void main(String[] ...

  6. Java50道经典习题-程序31 数组逆序

    题目:将一个数组逆序输出.分析:用第一个与最后一个交换. public class Prog31 { public static void main(String[] args) { //遍历原始数组 ...

  7. 数组逆序=全局内存版 VS 共享内存版

    全局内存版 #include <stdio.h> #include <assert.h> #include "cuda.h" #include " ...

  8. OpenJudge计算概论-数组逆序重放

    /*=============================================================== 数组逆序重放 总时间限制: 1000ms 内存限制: 65536kB ...

  9. JAVA 基础编程练习题31 【程序 31 数组逆序】

    31 [程序 31 数组逆序] 题目:将一个数组逆序输出. 程序分析:用第一个与最后一个交换. package cskaoyan; public class cskaoyan31 { @org.jun ...

  10. Java实现蓝桥杯VIP算法训练 数组逆序排列

    试题 算法训练 数组逆序排列 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 编写一个程序,读入一组整数(不超过20个),并把它们保存在一个整型数组中.当用户输入0时,表示输入结束. ...

随机推荐

  1. linux 多线程查看工具

    参考: http://www.oschina.net/translate/command-line-tools-to-monitor-linux-performance?cmp&p=1 htt ...

  2. Ext Connection

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  3. JS实现经典生产者消费者模型

    因为node使用单线程的方式实现,所以,在此使用定时器timer取代线程thread来实现生产者消费者模型. 代码例如以下: var sigintCount = 0; var productArray ...

  4. Redis 起步(linux)

    Rdis和JQuery一样是纯粹为应用而产生的,这里记录的是在CentOS 5.7上学习入门文章: 1.Redis简介 Redis是 一个key-value存储系统.和Memcached类似,但是解决 ...

  5. Object 转换为 BigDecimal

    项目中遇到读取Excel文件里面的数据转为金额的情况,为了程序更加的健壮,进行处理如下: import java.math.BigDecimal; import java.math.BigIntege ...

  6. pidera安装node.js(树莓派)

    1. 下载node.js wget http://nodejs.org/dist/v0.10.5/node-v0.10.5-linux-arm-pi.tar.gz tar -xzvf node-v0. ...

  7. TextView文字横向自己主动滚动

              效果截图:                              watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjI4Nj ...

  8. Mac版小黑屋提示无法确认开发者身份的解决办法

    Mac版小黑屋提示无法确认开发者身份的解决办法 学习了:https://jingyan.baidu.com/article/37bce2be703fa21003f3a259.html 需要按住cont ...

  9. QtGui.QLineEdit

    A QtGui.QLineEdit is a widget that allows to enter and edit a single line of plain text. There are u ...

  10. Oracle学习(五):多表查询

    1.知识点:能够对比以下的录屏进行阅读 SQL> --等值连接 SQL> --查询员工信息: 员工号 姓名 月薪 部门名称 SQL> select empno,ename,sal,d ...