A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© liuxiaoqin 中级黑马   /  2015-12-16 18:51  /  1070 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

用指针将数组a中n个整数,按相反顺序存放,求几种解题思路

2 个回复

倒序浏览
  1. #include <stdio.h>
  2. /**
  3. *  逆序一个数组
  4. *
  5. *  @param a   数组名
  6. *  @param len 数组长度
  7. */
  8. void nixu(int a[],int len){
  9.     int *p=a;
  10.     int temp;

  11.     //定义下标
  12.     int i=0,j=len-1;
  13.     while (i<j) {
  14.         //交换a[i]和a[j];
  15.         temp=*(p+i);
  16.         *(p+i)=*(p+j);
  17.         *(p+j)=temp;
  18.         //修改下标
  19.         i++,j--;
  20.     }

  21. }
  22. int main(int argc, const char * argv[]) {

  23.     int arr[10]={1,2,3,4,5,6,7,8,9,10};

  24.     //调用逆序函数
  25.     nixu(arr, 10);

  26.     //遍历数组
  27.     for (int i=0; i<10; i++) {
  28.         printf("%d\t",arr[i]);
  29.     }

  30.     return 0;
  31. }
复制代码
回复 使用道具 举报
楼上正解
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马