考生回忆:求最大幸运数,数组中最大的数字与其出现的次数相等就为最大幸运数,例如:数组a元素为6个,分别为:1,3,3,3,1,2,最大幸运数为3,数组b元素为5个,分别为0,2,1,3,1,则没有最大幸运数,返回-1.
fun(a,6) fun(b,5)
#include<stdio.h>
int fun(int arr[],int n)
{
if(n==0)return -1;
int max=arr[0];
for(int i=1;i<n;i++)
{
if(arr[i]>max)
max=arr[i];
}
int count=0;
for(int i=0;i<n;i++)
{
if(arr[i]==max)
count++;
}
return(max==count)?max:-1;
}
int main()
{
int a[6]={1,2,3,3,3,1};
int b[5]={0,2,1,3,1};
printf("%d\n",fun(a,6));
printf("%d\n",fun(b,5));
return 0;
}
运行:
祝各位考试顺利!