读书人

应用动态数组

发布时间: 2012-11-05 09:35:12 作者: rapoo

使用动态数组

1、定义一个指针类型

如:typedef double* DoubleArrayPtr;

2、声明一个指针变量

如: DoubleArrayPtr a;

3、调用new

a = new double[ array_size ];

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

5、像普通数组那样使用

6、调用delete [ ]

如:delete [ ] a;

// 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;}}}


应用动态数组

读书人网 >编程

热点推荐