递归最大元素

来源:互联网 发布:淘宝可以部分退款吗 编辑:程序博客网 时间:2024/06/06 07:00

编一个程序,读入n个元素的实型数组,然后调用一个函数,递归地找出其中的最大元素,并指出它的位置

第一行是一个整数n(0<n<1000),代表元素的个数。

第二行是n个以一个空格分开的实数(保证无相等元素)。

输出最大元素(保留三位小数)及它在数组中出现的位置。

样例输入:3

2.0 3.1 4.3

样例输出:4.300 2

#include<stdio.h>
int max(float b[],int m){
if (m<=0){
return;
}
else if(b[m]>b[(int)b[0]]){
b[0]=m;
}
max(b,m-1);

int main(){
int n,i;
float a[1000];
scanf("%d",&n);
for(i=1; i<=n; i++){
scanf("%f",&a[i]);
}
a[0]=1;
max(a,n);
printf("%.3f %d\n",a[(int)a[0]],(int)a[0]-1);
return 0;
}



原创粉丝点击