- 获取数组的最大值和最小值
使用 C 语言编写程序获取数组的最大值和最小值,可以先利用 for 循环遍历数组,依次将元素与当前最大值和最小值比较,更新最大值和最小值即可。代码如下:
#include <stdio.h>
int main() {
int nums[5] = {1, 2, 3, 4, 5};
int i, max = nums[0], min = nums[0];
for (i = 1; i < 5; i++) {
if (nums[i] > max) {
max = nums[i];
}
if (nums[i] < min) {
min = nums[i];
}
}
printf("Max value is %d\n", max);
printf("Min value is %d\n", min);
return 0;
}
在程序中,我们定义了一个长度为 5 的整数数组 nums,并将其初始化为 {1, 2, 3, 4, 5}。接着,我们定义了变量 i,max 和 min,用于保存最大值和最小值的初始值。然后使用 for 循环遍历数组,依次将元素与当前最大值和最小值比较,更新最大值和最小值即可。最后,使用 printf 函数输出结果。
- 获取动态数组的最大值和最小值
有时候,我们需要获取动态数组的最大值和最小值。这时候,我们可以使用 malloc 函数动态分配数组内存,然后使用和静态数组相同的方法来获取最大值和最小值。代码如下:
#include <stdio.h>
#include <stdlib.h>
int main() {
int n, i, *nums, max, min;
printf("Enter the size of array: ");
scanf("%d", &n);
nums = (int*) malloc(n * sizeof(int));
printf("Enter %d integers: ", n);
for (i = 0; i < n; i++) {
scanf("%d", &nums[i]);
}
max = nums[0];
min = nums[0];
for (i = 1; i < n; i++) {
if (nums[i] > max) {
max = nums[i];
}
if (nums[i] < min) {
min = nums[i];
}
}
printf("Max value is %d\n", max);
printf("Min value is %d\n", min);
free(nums);
return 0;
}
在程序中,我们首先使用 scanf 函数获取动态数组的大小 n,然后使用 malloc 函数动态分配 n 个 int 类型的数组元素,返回的指针通过 变量 nums 引用该数组,然后使用 for 循环依次输入数组元素。接着,我们依然采用和静态数组相同的方式来获取最大值和最小值即可。最后,使用 free 函数释放内存。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言程序 数组的最大值和最小值的 - Python技术站