c语言编程怎么找最大值和平均值

时间:2025-01-29 03:17:21 网络游戏

在C语言中,找最大值和平均值的方法有很多种。以下是几种常见的方法:

求最大值的方法

常规解法

写法1

```c

int max1(int a, int b) {

if (a > b) return a;

else return b;

}

```

写法2(使用库中自带的max函数):

```c

include

int max(int a, int b) {

return (a > b) ? a : b;

}

int max3(int a, int b, int c) {

return max(a, max(b, c));

}

```

另类解法

写法4

```c

int max4(int a, int b) {

return (a + b + abs(a - b)) / 2;

}

```

求平均值的方法

常规解法

写法1

```c

float ave1(float p, float q) {

return (p + q) / 2.0;

}

```

写法2

```c

float ave2(int n) {

int sum = 0;

for (int i = 0; i < n; i++) {

sum += n[i];

}

return (float)sum / n;

}

```

使用循环

写法5

```c

void findMaxMin(int *arr, int n, int *max, int *min) {

*max = *min = arr;

for (int i = 1; i < n; i++) {

if (arr[i] > *max) {

*max = arr[i];

}

if (arr[i] < *min) {

*min = arr[i];

}

}

}

int main() {

int arr[] = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5};

int n = sizeof(arr) / sizeof(arr);

int max, min;

findMaxMin(arr, n, &max, &min);

printf("最大值是:%d,最小值是:%d\n", max, min);

}

```

综合示例