c语言从键盘输入任意N个整数值(N<100),存入数组中,并求出数组的最大值和最小值
时间: 2024-10-18 07:04:34 浏览: 33
c语言+从键盘输入10个无序的整数,存放在数组中,找出数组中最大值与最小值的所在的位置,并输出数组元素所在的位置与数组元素的值
5星 · 资源好评率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;
}
```
阅读全文