用new操作为一个包含10个整数的数组分配内存,输入若干个值到数组中,分别统计其中正数和负数的个数后再用delete操作释放内存。
时间: 2024-10-10 14:11:51 浏览: 28
在C++中,你可以这样做:
```cpp
#include <iostream>
using namespace std;
int main() {
int size = 10;
int* arr = new int[size]; //动态分配内存
for (int i = 0; i < size; i++) {
cout << "请输入第 " << i+1 << " 个整数: ";
cin >> arr[i];
if (arr[i] > 0) {
positive_count++; //假设positive_count已经初始化为0
} else if (arr[i] < 0) {
negative_count++; //同样假设negative_count已经初始化为0
}
}
cout << "正数有 " << positive_count << " 个,负数有 " << negative_count << " 个。\n";
delete[] arr; //释放内存
arr = nullptr; //防止未初始化的指针引用
return 0;
}
```
在这个程序中,我们首先创建了一个大小为10的整数数组,并提示用户逐个输入元素。然后,我们遍历数组,根据元素的正负情况增加对应的计数器。最后,我们使用`delete[]`来释放之前分配的内存,并将数组指针设为nullptr以防止意外引用。
阅读全文