设为首页 加入收藏

TOP

动态数组的使用
2013-01-01 14:50:04 来源: 作者: 【 】 浏览:288
Tags:动态 使用

  1、定义一个指针类型

  如:typedef   double*   DoubleArrayPtr;

  2、声明一个指针变量

  如: DoubleArrayPtr   a;

  3、调用new

  a =  new   double[ array_size ];

  4:、动态数组的长度在方括号中给出

  5、像普通数组那样使用

  6、调用delete [ ]

  如:delete  [ ]   a;

  [cpp]

  // String.cpp : Defines the entry point for the console application.

  //

  #include "stdafx.h"

  #include<iostream>

  #include<cstdlib>

  #include<cstddef>///******

  typedef int* IntArrayPtr;  ///(1)

  void fill_array(int a[] , int size);

  void sort(int a[] , int size);

  int main(int argc, char* argv[])

  {

  using namespace std;

  cout《"This program sorts numbers from highest to lowest .\n";

  int array_size;

  cout《"How many numbers will be sorted \n";

  cin》array_size;

  IntArrayPtr a;///(2)

  ///创建动态数组

  a = new int[array_size]; ///(3)

  fill_array(a, array_size);

  sort(a, array_size);

  cout《"In sorted order the numbers are :\n";

  for(int index = 0; index < array_size ; index++)

  {

  cout《a[index]《" ";

  }

  cout《endl;

  delete [] a;  //(5)

  return 0;

  }

  void fill_array(int a[] ,int size)

  {

  using namespace std;

  cout《"Enter "《size《" integers.\n";

  for (int index = 0; index < size ;index++)

  cin》a[index];

  }

  void sort(int a[] , int size)

  {

  int i , j ;

  //选择排序

  ///将数组降序排序

  for(i = 0; i < size - 1 ; i++)

  for( j = i +1; j < size ; j++)

  {

  if( a[i] < a[j] )

  {

  int temp = a[i];

  a[i] = a[j];

  a[j]  = temp;

  }

  }

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C ++标准库容器总结 下一篇分割矩阵 (二分范围[L,R))

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: