gpt4 book ai didi

c - 如何计算数组中有多少个最大值?

转载 作者:行者123 更新时间:2023-11-30 20:50:53 34 4
gpt4 key购买 nike

我有这个函数,我希望你帮忙看看是否有多个最大值。如果存在多个最大值,我想打印“no unique max”。

下面的代码成功找到了最大值,但是用于计算最大值出现次数的计数器不起作用,我收到此消息:

suggest braces around empty body in c

int find_max(int b[N][N])
{
int max = b[0][0];
int x,y;
int counter=0;
int a=0,v=0,c=0;
for (x = 0; x < N; x++)
{
for (y = 0; y < N; y++)
{
if (max < b[x][y])
{
max = b[x][y];
a=x;
v=y;
}
}
}

c=((a*10)+v);
for (x = 0; x < N; x++)
{
for (y = 0; y < N; y++)
{
if(max);
{
counter++;
}
}
}
if(counter>1)
printf("no uniqe max");
else
return c;
}

最佳答案

我相信问题(至少一个问题)是以下一行:

if(max);

如果 max 不为零,则这将始终为真。我想你想要这样的东西:

if(b[x][y] == max)

(注意:比较和删除“;”)

警告(我怀疑)来自“;”在“if”之后,这会终止 if,并且始终执行下一部分“{...}”,它与 if 无关。

关于c - 如何计算数组中有多少个最大值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37780992/

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