gpt4 book ai didi

c - 返回多个值的输入数组函数

转载 作者:行者123 更新时间:2023-11-30 14:47:52 26 4
gpt4 key购买 nike

“创建一个程序,实现一个函数,输入一个 vector 及其大小,通过函数的两个参数返回 vector 的最大值和最小值”我正在执行这个程序,但我找不到错误。我正朝着正确的方向前进吗?

-抱歉我的英语不好。

#include <stdio.h>
int function (int A[],int size,int *max, int *min)
{
int temp,i,j;

for(i=0;i<size;i++)
{
for(j=0;i<size;j++)
{
if(A[i] < A[j])
{
temp = A[i];
A[i] = A[j];
A[j] = temp;
}
}

}

*min = A[size];
*max = A[0];

return 0;
}



int main ()

{
int size,i;
int max,min;
int *A;

printf("Enter size of the array ");
scanf("%d",&size);

A = (int*)malloc(size * sizeof(int));

for(i=0;i<size;i++)
{
printf("Enter value:");
scanf("%d",&A[i]);
}

function(A,size,&max,&min);

printf("The min is: %d\n",min);
printf("The max is: %d:\n",max);

}

最佳答案

在这一行for(j=0;i<size;j++)而不是i应该是j 。另外,而不是 int A[]会更好int *A 。最后一点是,正如评论中提到的,您不需要对所有数组进行排序,因为其计算复杂度是 \Theta(n^2)在你的实现中。最好用常用的方法找到minmaxO(n) .

关于c - 返回多个值的输入数组函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50933308/

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