頭禿,我想了好久沒出來,找不到人求助,發個帖求幫忙,難受,我自己寫出來運行沒啥,就是求大小求最大值很懵

希望大俠評論區幫幫忙
uj5u.com熱心網友回復:
int calc_max_val(int *_array , int _array_len){
int max = 0;
if (_array == NULL || _array_len == 0)
return 0;
for (int i = 0 ; i < _array_len; i++)
{
if (max <= _array[i])
max = _array[i];
}
return max;
}
int main(void)
{
// int array[] = {1,2,0,5,6,77,88,99,-1};
int array[] = { -1,-2,0,-5,-6,-77,-88,-99,5894848 };
int max = calc_max_val(array,sizeof(array)/sizeof(array[0]));
printf("array's max value %d\r\n", max);
system("pause");
return 0;
}
uj5u.com熱心網友回復:
只求最大值一個for回圈就夠了int calculate(int x[5])
{
int max = 0;
for(int i=0;i<5;i++)
{
if(max < a[i])
{
max = a[i];
}
}
return max;
}
uj5u.com熱心網友回復:
這個代碼有bug,是否考慮到了當該一維陣列里的元素都是負數時,最大值豈不是0了?還符合程式要求嗎?
uj5u.com熱心網友回復:
這個代碼有bug,是否考慮到了當該一維陣列里的元素都是負數時,最大值豈不是0了?還符合程式要求嗎?
uj5u.com熱心網友回復:
int calculate(int x[], int len)
{
int max = a[0];
for(int i=1;i<len;i++)
{
if(max < a[i])
{
max = a[i];
}
}
return max;
}
供參考~
uj5u.com熱心網友回復:
是的,有bug,進來max的值取陣列其中一個元素的值就好了
uj5u.com熱心網友回復:
能幫忙看看下面這個問題嗎,我按你說的寫了,就是輸出結果不準確uj5u.com熱心網友回復:
int calculate(int x[], int len)
{
int max = a[0];
for(int i=1;i<len;i++)
{
if(max < a[i])
{
max = a[i];
}
}
return max;
}
供參考~
#include<stdio.h>
int calculate(int x[],int len)
{
int max = x[0];
for(int n=1;n<len;n++)
{
if(max < x[n])
{
max = x[n];
}
}
return max;
}
int main()
{
float a[5],max; int i;
printf("請輸入5個數:\n");
scanf("%d",&i);
max=calculate(a,i);
printf("%f",max);
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/44260.html
標籤:C語言
上一篇:求助貼
下一篇:c語言pow函式
