创建有n个元素的int类型和Point类型数组,n值由用户输入,并通过键盘给每个元素赋值,要求程序完整能够执行。 (1)用new动态创建数组 (2)用vector创建数组对象
时间: 2024-03-08 14:49:10 浏览: 144
好的,您的问题是关于创建数组的。我可以帮您解答。下面是用C++语言实现的代码:
1. 用new动态创建数组
```c++
#include<iostream>
using namespace std;
int main()
{
int n;
cout<<"请输入数组的长度:"<<endl;
cin>>n;
// 动态创建int类型数组
int* arr = new int[n];
cout<<"请输入数组的元素(int类型):"<<endl;
for(int i=0;i<n;i++)
{
cin>>arr[i];
}
cout<<"数组的元素(int类型)为:"<<endl;
for(int i=0;i<n;i++)
{
cout<<arr[i]<<" ";
}
cout<<endl;
// 动态创建Point类型数组
struct Point
{
int x;
int y;
};
Point* arr_p = new Point[n];
cout<<"请输入数组的元素(Point类型):"<<endl;
for(int i=0;i<n;i++)
{
cin>>arr_p[i].x>>arr_p[i].y;
}
cout<<"数组的元素(Point类型)为:"<<endl;
for(int i=0;i<n;i++)
{
cout<<"("<<arr_p[i].x<<","<<arr_p[i].y<<") ";
}
cout<<endl;
// 释放内存
delete[] arr;
delete[] arr_p;
return 0;
}
```
2. 用vector创建数组对象
```c++
#include<iostream>
#include<vector>
using namespace std;
int main()
{
int n;
cout<<"请输入数组的长度:"<<endl;
cin>>n;
// 创建int类型vector数组
vector<int> arr(n);
cout<<"请输入数组的元素(int类型):"<<endl;
for(int i=0;i<n;i++)
{
cin>>arr[i];
}
cout<<"数组的元素(int类型)为:"<<endl;
for(int i=0;i<n;i++)
{
cout<<arr[i]<<" ";
}
cout<<endl;
// 创建Point类型vector数组
struct Point
{
int x;
int y;
};
vector<Point> arr_p(n);
cout<<"请输入数组的元素(Point类型):"<<endl;
for(int i=0;i<n;i++)
{
cin>>arr_p[i].x>>arr_p[i].y;
}
cout<<"数组的元素(Point类型)为:"<<endl;
for(int i=0;i<n;i++)
{
cout<<"("<<arr_p[i].x<<","<<arr_p[i].y<<") ";
}
cout<<endl;
return 0;
}
```
以上是两种创建数组的方法,希望可以帮到您。如果您还有其他问题,可以继续问我哦。
阅读全文