65,189
社区成员




#include <stdio.h>
#include <math.h>
int max (int *rank, int len)
{
int i, max_n;
for (i = 0 ; i < len - 1 ; i++){
if (rank [i] <= rank [i+1])
max_n = rank [i+1] ;
else
max_n = rank [i] ;
rank [i+1] = rank [i] ;
}
return max_n ;
}
int get_max_val(int *rank, int len)
{
int i;
int max_n = rank[0];
for (i = 1; i < len; i++)
if (max_n < rank[i])
max_n = rank[i];
return max_n;
}
int main ()
{
int m ;
int rank [5] = {3, 5, 6, 8, 34};
//m = max(rank, 5);
m = get_max_val(rank, 5);
printf("max: %d\n", m);
return 0 ;
}
参考一下吧。
代码不要写的太硬。
求最大值,就是遍历加比较。get_max_val函数求最大值是不是思路更好一些。当然你的也能求出最大值。#include <stdio.h>
#include <math.h>
int max (int rank[] )
{
int i , n ;
for (n = 0 ; n <= 3 ; n++){
if (rank [n] <= rank [n+1])
i = rank [n+1] ;
else
i = rank [n] ;
rank [n+1] = rank [n] ;
}
return i ;
}
int main (){
int m ;
int rank [5] = {3,5,6,8,34};
m = max (rank);
printf("%d",m);
return 0 ;
}