实验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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值