QtC++编程,容器里的一组数据为(0,0,0,0,0,0,0,0,1,2,5,6,8,7,0,0,0,0,0,0)如何将不为0的数删除
时间: 2023-09-13 08:05:26 浏览: 120
给定一组浮点型数据,首先对所有数据保留n位小数(四合五入),然后删除0元素,最后找到删除0元素后的数组的众数。
你可以使用 QVector 类来存储这组数据,并使用 QVector 的 erase() 函数将所有不为 0 的数删除。具体的代码如下所示:
```c++
#include <QVector>
#include <algorithm>
int main()
{
QVector<int> data = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 5, 6, 8, 7, 0, 0, 0, 0, 0, 0};
// 使用算法库中的 remove_if() 函数删除所有不为 0 的数
data.erase(std::remove_if(data.begin(), data.end(), [](int x) { return x != 0; }), data.end());
return 0;
}
```
在上面的代码中,我们使用了算法库中的 remove_if() 函数,该函数可以删除满足特定条件的所有元素。在这里,我们使用 lambda 表达式来指定删除所有不为 0 的元素。最后,我们使用 QVector 的 erase() 函数来真正删除这些元素。
阅读全文