我的数组类

来源:互联网 发布:万网买了域名能退吗 编辑:程序博客网 时间:2024/05/18 19:45

  1. *Copyright(c)2016,烟台大学计算机与控制工程学院 
  2.  *All rights reserved 
  3.  *文件名称:123.cpp 
  4.  *作    者:隋宗涛 
  5.  *完成日期:2016年5月10日 
  6.  *版 本 号:v1.0 
  7.  * 
  8.  *问题描述:阅读程序,完成成员函数的定义 
  9.  *输入描述: 
  10.  *程序输出: 
  11. */  
  12. #include<iostream>  
  13. using namespace std;  
  14. class MyArray  
  15. {  
  16. private:  
  17.     int *arrayAddr; //保存一个有len个整型元素的数组的首地址  
  18.     int len;       //记录动态数组的长度  
  19.     int max;       //动态数组中的最大值(并非动态数组中必须要的数据成员)  
  20. public:  
  21.     MyArray(int *a, int n);  
  22.     ~MyArray();  
  23.     int getValue(int i);   //获得数组中下标为i的元素的值  
  24.     int getLen();          //返回数组长度  
  25.     int getMax( );         //返回数组中的最大值  
  26. };  
  27. MyArray::MyArray(int *a, int n)  
  28. {  
  29.     len=n;  
  30.     arrayAddr=new int[len];  
  31.     int i;  
  32.     max=a[0];  
  33.     for(i=0;i<n;i++)  
  34.     {  
  35.         arrayAddr[i]=a[i];  
  36.         if(max<arrayAddr[i])  
  37.             max=arrayAddr[i];  
  38.     }  
  39. }  
  40. MyArray::~MyArray()  
  41. {  
  42.     delete [] arrayAddr;  
  43. }  
  44. int MyArray::getValue(int i)     //获得数组中下标为i元素的值  
  45. {  
  46.    return  arrayAddr[i];  
  47. }  
  48. int MyArray::getLen()         //返回数组的长度  
  49. {  
  50.     return len;  
  51. }  
  52. int MyArray::getMax()        //返回数组中的最大的值  
  53. {  
  54.     return max;  
  55. }  
  56.   
  57. int main(){  
  58.     int b[10]= {75, 99, 90, 93, 38, 15, 5, 7, 52, 4};  
  59.     MyArray r1(b,10);  
  60.     cout<<"最大值:"<<r1.getMax()<<endl;  
  61.     int c[15] = {18,68,10,52,3,19,12,100,56,96,95,97,1,4,93};  
  62.     MyArray r2(c,15);  
  63.     int i,s=0;  
  64.     for(i=0; i<r2.getLen(); i++)  
  65.         s+=r2.getValue(i);  
  66.     cout<<"所有元素的和为:"<<s<<endl;  
  67.     return 0;  
  68. }  
  69. 运行结果:  

0 0
原创粉丝点击