c++用new运算符为一个包含20个整数的数组分配内存,输入数据并统计其中正数和负数的个数,并输出结果后使用delete运算符释放空间。
时间: 2024-10-16 11:13:31 浏览: 10
输入一些整数,编程计算并输出其中所有正数的和,输入负数时不累加,继续输入下一个数 输入零时,表示输入数据结束 要求最后统计出累加的项数
5星 · 资源好评率100%
在C++中,你可以使用`new`运算符动态地为一个数组分配内存,然后通过遍历数组元素来统计正数和负数的数量。这里是一个简单的示例:
```cpp
#include <iostream>
using namespace std;
int main() {
int size = 20; // 定义数组大小
int* arr = new int[size]; // 使用new为数组分配内存
// 输入数据
for (int i = 0; i < size; ++i) {
cout << "请输入第 " << i+1 << " 个数: ";
cin >> arr[i];
}
// 统计正数和负数的个数
int positive_count = 0;
int negative_count = 0;
for (int num : arr) {
if (num > 0) {
positive_count++;
} else if (num < 0) {
negative_count++;
}
}
// 输出结果
cout << "正数有 " << positive_count << " 个,负数有 " << negative_count << " 个。\n";
// 释放内存
delete[] arr; // 使用delete[]删除整个数组
return 0;
}
```
当你运行完程序后,记得手动调用`delete[] arr`来释放之前动态分配的内存,以避免内存泄漏。
阅读全文