gpt4 book ai didi

c++ - 在 C++ 中增加数组大小

转载 作者:行者123 更新时间:2023-11-28 05:21:51 27 4
gpt4 key购买 nike

<分区>

我有项目,这是我的代码。我应该编写一个控制台应用程序,它在给定文件中找到最大的 k 个数字,并按降序打印这些最大的 k 个数字。我的程序应该将文件名和 k 作为用户的输入参数。

例如以下文件内容:

3, 5, 12, 54, 12, 3, 654, 11, 46, 7, 3

k = 3 的输出应该是:

654 54 46

using namespace std;


int main() {
int i, size, p, maxim, k, n, j;

int* a = new int[7000000];

size = 7000000;
ifstream file("7_million_numbers.txt");
if (file.is_open())
{

for (i = 0; i < size; i = i + 1)
file >> a[i];

}
cout << "Enter the number: " << endl;
cin >> n;

for (j = 1; j < n; j = j + 1) {
for (k = 0; k < size - 1; k++) {
maxim = a[k];
p = k;
for (i = k + 1; i < size; i++)
if (a[i] > maxim) {
maxim = a[i];
p = i;
}
a[p] = a[k];
a[k] = maxim;
}
}

for (i = 0; i < n; i++)
cout << a[i] << " " << endl;

system("pause");
delete[] a;
return 0;
}

此代码无效。我有“.exe 停止工作”的问题。是因为数组大小吗?因为程序正在读取的文本文件有 700 万个数字。

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com