实验6:Problem A: 数组类(I)

Description

封装一个整型数组类,用于存储整数和处理的相关功能,支持以下操作:
 
1. Array::Array()无参构造方法:创建一个空数组对象。
2. Array::size()方法:返回Array对象中元素个数。
3. Array::get(int n)方法:按格式从输入读取n元素。
4. 下标运算符:返回下标所指的元素。
 
-----------------------------------------------------------------------------
 
你设计一个数组类Array,使得main()函数能够正确运行。
 
函数调用格式见append.cc。
 
append.cc中已给出main()函数

Input

输入的第一个整数n,表示有n组测试数据。
后面的每行以一个整数k开头,表示后面有k个整数。
 

Output

把输入的数组,输出出来。每行数据对应一个输出。格式见sample。
 

Sample Input

4 2 10 20 1 0 0 3 1 2 3

Sample Output

10 20 0 1 2 3

HINT

 

Append Code

 1 #include<iostream>
 2 #include<vector>
 3 using namespace std;
 4 class Array{
 5     vector<int> arr;
 6 public:
 7     int operator[](int n){return arr[n];}
 8     int size()
 9     {
10         return arr.size();
11     }
12 
13         void get(int n)
14         {
15             arr.clear();
16             int tmp;
17             for(int i=0;i<n;i++)
18             {
19                     cin>>tmp;
20                     arr.push_back(tmp);
21             }
22         }
23 };
24 int main()
25 {
26     int cases;
27     Array arr;
28     cin >> cases;
29     for(int ca = 1; ca <= cases; ca++)
30     {
31         int len;
32         cin >> len;
33         arr.get(len);
34         for(int i = 0; i < arr.size(); i++)
35             if(i + 1 == arr.size())
36                 cout << arr[i];
37             else
38                 cout << arr[i] << " ";
39         cout << endl;
40     }
41 }
42 #include<iostream>
43 #include<vector>
44 using namespace std;
45 class Array{
46     vector<int> arr;
47 public:
48     int operator[](int n){return arr[n];}
49     int size()
50     {
51         return arr.size();
52     }
53 
54         void get(int n)
55         {
56             arr.clear();
57             int tmp;
58             for(int i=0;i<n;i++)
59             {
60                     cin>>tmp;
61                     arr.push_back(tmp);
62             }
63         }
64 };
65 int main()
66 {
67     int cases;
68     Array arr;
69     cin >> cases;
70     for(int ca = 1; ca <= cases; ca++)
71     {
72         int len;
73         cin >> len;
74         arr.get(len);
75         for(int i = 0; i < arr.size(); i++)
76             if(i + 1 == arr.size())
77                 cout << arr[i];
78             else
79                 cout << arr[i] << " ";
80         cout << endl;
81     }
82 }
向代码最深处出发~!
原文地址:https://www.cnblogs.com/auto1945837845/p/5382262.html