gpt4 book ai didi

c++ - 如何解决此问题以在 vector 中排序列表

转载 作者:行者123 更新时间:2023-12-02 10:23:06 24 4
gpt4 key购买 nike

#include <iostream>
using namespace std;
void selecao(float A[], int n)
{
int i, j, indicmin;
float auxiliar;
for (i = 0; n-1; i++)
{
indicmin = i;
for(j = i+1 ; j< n; j++)
if (A[j] < A[indicmin])
indicmin = j;
auxiliar = A[indicmin];
A[indicmin] = A[i];
A[i] = auxiliar;

}
}
// Imprimir a lista em ordem crescente
void ImprimirLista (float a[], int n)
{
for (int i = 0 ; i < n ; i++)
cout << a[i] << " ";
cout << endl ;
}
int main()
{
float A[4]={1.0,4.0,3.0,0.0};
selecao(A,4);
ImprimirLista(A,4);
}
我需要它来按月牙顺序形成一个列表,因此要测试,我创建了Imprimir Lista和main,但是结果一无是处。不要打印任何东西。

最佳答案

using namespace std;
void selecao(float* A, int n)
{
int i, j, indicmin;
float auxiliar;
for (i = 0; i <= n - 1; i++)
{
indicmin = i;
for (j = i + 1; j < n; j++)
{
if (A[j] < A[indicmin])
indicmin = j;
}
auxiliar = A[indicmin];
A[indicmin] = A[i];
A[i] = auxiliar;

}
}

在主要方面,您需要进行以下更改:
selecao(&A[0], 4);

为什么您的程序无法运行?
首先进行循环比较是错误的,并且数组传递错误。

关于c++ - 如何解决此问题以在 vector 中排序列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59195450/

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