用C语言编程.写出一函数,求出有N个元素的整数数组的最大值及其下标。

2024-12-01 11:40:06
推荐回答(3个)
回答1:

楼主,我的程序如下。函数max读入一个n元素的数组a,返回其中最大元素的地址。这样,在调用max的函数中(这里是main),可以通过两种运算分别得到最大元素的值和它的下标(见main中注释)
#include
int
*
max(int
*
a,
int
n)
{
int
i;
int
*
p
=
a;
for
(
i
=
0;
i
<
n;
i++
)
if
(
a[i]
>
*p
)
p
=
a+i;
return
p;
}
int
main(void)
{
int
a[10];
int
i;
int
*
ans;
printf(
"Please
input
ten
integers:\n"
);
for
(
i
=
0;
i
<
10;
i++
)
scanf(
"%d",
a+i
);
ans
=
max(a,
10);
/*
ans中现在存的是数组a中最大元素的地址
*/
printf(
"The
index
is
%d,
the
max
is
%d\n",
ans-a,
*ans
);
/*
ans-a求得的是最大元素的下标,
*ans得到的最大元素的值
*/
return
0;
}

回答2:

下面我用C++来写。
#include
using
namespace
std;
int
max(int
,int);
int
main{
int
n,maxnumber;
cin>>n;
int
v[];
for
(int
i=0;i
>v[i]}
maxnumber=v[0];
for(i=1;i
b?a:b}
注意:其实C++的语言和C基本上一样.

回答3:

int
n;//下标值.设为全局变量
int
findmax(int
array[],int
len)
{
int
max;
max=array[0];
for(int
i=1;i
评论
0
0
加载更多