C语言中如何用for循环求出输入的数组的最大值和最小值
时间: 2024-12-04 20:27:09 浏览: 15
在C语言中,你可以使用for循环配合比较操作符来找到数组的最大值和最小值。下面是一个简单的示例:
```c
#include <stdio.h>
int main() {
int arr[] = {5, 10, 15, 20, 25}; // 假设这是一个整数数组
int n = sizeof(arr) / sizeof(arr[0]); // 数组长度
int max = arr[0]; // 初始化最大值为第一个元素
int min = arr[0]; // 初始化最小值为第一个元素
for (int i = 1; i < n; i++) {
if (arr[i] > max) { // 如果当前元素大于最大值
max = arr[i];
}
if (arr[i] < min) { // 如果当前元素小于最小值
min = arr[i];
}
}
printf("最大值: %d\n", max);
printf("最小值: %d\n", min);
return 0;
}
```
在这个例子中,`for`循环遍历整个数组,每次迭代都会检查当前元素是否比当前已知的最大值或最小值大或小,并更新相应的变量。循环结束后,`max`和`min`变量就包含了数组的最大值和最小值。
相关问题
c语言从键盘输入任意N个整数值(N<100),存入数组中,并求出数组的最大值和最小值
在C语言中,你可以使用`scanf()`函数从键盘获取用户输入的整数,并存储到动态创建的数组中。然后通过遍历数组,找出最大值和最小值。以下是简单的步骤:
1. 首先,你需要定义一个能容纳最多100个整数的动态数组,可以使用`malloc()`分配内存。
2. 使用`for`循环获取用户输入,直到达到指定的N个整数。每输入一个,就用`scanf("%d", &array[i])`读取并存储到数组`array[]`的相应位置。
3. 定义两个变量`max`和`min`,初始值分别为数组的第一个元素,用于记录最大值和最小值。
4. 再次使用`for`循环遍历整个数组,比较每个元素与当前已知的最大值和最小值,更新这两个变量。
5. 循环结束后,`max`和`min`就是数组中的最大值和最小值。
这是一个基本的示例代码片段:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int N, i;
printf("请输入数字的数量(N<100): ");
scanf("%d", &N);
// 动态分配内存
int *array = (int*) malloc(N * sizeof(int));
if (!array) {
printf("内存分配失败!\n");
return 1;
}
// 获取用户输入并计算最大值和最小值
for (i = 0; i < N; ++i) {
printf("请输入第 %d 个数: ", i+1);
scanf("%d", &array[i]);
// 初始设置 max 和 min 为第一个元素
array[i] > array[0] ? max = array[i] : max = array[0];
array[i] < array[0] ? min = array[i] : min = array[0];
}
printf("数组中的最大值是: %d\n", max);
printf("数组中的最小值是: %d\n", min);
// 释放内存
free(array);
return 0;
}
```
c语言求一维数组的最大值和最小值
可以使用循环遍历数组中的元素,找到最大值和最小值。
以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int arr[] = {2, 5, 1, 8, 4};
int n = sizeof(arr) / sizeof(arr[0]);
int max = arr[0];
int min = arr[0];
for (int i = 1; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
}
if (arr[i] < min) {
min = arr[i];
}
}
printf("最大值为:%d\n", max);
printf("最小值为:%d\n", min);
return 0;
}
```
输出结果为:
```
最大值为:8
最小值为:1
```
阅读全文