c函数
本帖最后由 张邦焱 于 2021-3-12 14:36 编辑10个数找出最大值且找出最大值位置。
#include<stdio.h>
int main()
{
float max(float array[], int n);
float a, m;
int i, n;
n = 0;
printf("please input 10 numbers:\n");
for (i = 0; i < 10; i++)
scanf_s("%f", &a);
m = max(a,n);
m = max(a, n);
printf("m=%f\nn=%d\n",m,n);
return 0;
}
float max(float array[], int n)
{
int i;
n = 0;
float m = array;
for (i = 1; i < 10; i++)
{
if (m<array)
{
m = array;
n = i;
}
}
return m;
return n;
}
这个有问题,不能同时return2个值。数组名做实参咋改比较好呢。 本帖最后由 jackz007 于 2021-3-12 14:56 编辑
为什么一定要返回 2 个值,返回最大值的数组索引不就好了?
#include<stdio.h>
int max(float array[])
{
int d , i ;
for(d = 0 , i = 1 ; i < 10 ; i ++) {
if(array > array) d = i ;
}
return d ;
}
int main(void)
{
float a ;
int i , n ;
printf("please input 10 numbers:\n") ;
for (i = 0; i < 10 ; i++) scanf_s("%f" , & a) ;
n = max(a) ;
printf("m = %f\nn = %d\n" , a , n) ;
}
编译、运行实况
D:\0002.Exercise\C>g++ -o x x.c
D:\0002.Exercise\C>x
please input 10 numbers:
1 2 3 4 10 9 8 7 6 5
m = 10.000000
n = 4
D:\0002.Exercise\C> jackz007 发表于 2021-3-12 14:48
为什么一定要返回 2 个值,返回最大值的数组索引不就好了?
编译、运行实况
嗯嗯感谢感谢感谢
页:
[1]