C语言自定义数组值,并求最大最小值
时间: 2023-11-23 15:02:39 浏览: 50
好的,这是一个关于C语言的编程问题。您可以通过定义数组并给数组元素赋值的方式来自定义数组。例如:
```
int array[5] = {1, 4, 2, 8, 5};
```
这样就定义了一个包含5个元素的int类型数组,并初始化了它们的值。对于求最大最小值,您可以编写一个循环并使用if语句来比较每个元素的大小。下面是一些伪代码,帮助您理解:
```
int max = array[0]; //初始化max为第一个元素的值
int min = array[0]; //初始化min为第一个元素的值
for(int i = 1; i < 5; i++) { //从第二个元素开始循环
if(array[i] > max) { //如果当前元素大于max,更新max
max = array[i];
}
if(array[i] < min) { //如果当前元素小于min,更新min
min = array[i];
}
}
//现在max和min变量中分别保存了数组中的最大和最小值
```
希望这能够帮到您!
相关问题
C语言8. 从键盘输入5个整数,保存于数组中。编程找出其中最大值和最小值,把二者位置对调,然后输出调整后的数组。要求:使用自定义函数实现对调。
好的,这是一个比较常见的 C 语言编程题目,下面是解题思路和代码实现。
首先,我们需要定义一个数组来存储输入的 5 个整数,然后遍历数组找出其中的最大值和最小值,接着使用自定义函数实现对调,最后输出调整后的数组。
下面是完整的代码实现:
```c
#include <stdio.h>
// 自定义函数 swap,用于交换两个元素的值
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int arr[5];
// 从键盘输入 5 个整数,保存于数组中
printf("请输入 5 个整数:\n");
for (int i = 0; i < 5; i++) {
scanf("%d", &arr[i]);
}
// 找出数组中的最大值和最小值
int max_index = 0, min_index = 0;
for (int i = 1; i < 5; i++) {
if (arr[i] > arr[max_index]) {
max_index = i;
}
if (arr[i] < arr[min_index]) {
min_index = i;
}
}
// 对调最大值和最小值的位置
swap(&arr[max_index], &arr[min_index]);
// 输出调整后的数组
printf("调整后的数组为:\n");
for (int i = 0; i < 5; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
运行结果示例:
```
请输入 5 个整数:
3 5 2 8 1
调整后的数组为:
3 1 2 8 5
```
这样,我们就完成了这道 C 语言编程题目。
用C语言写代码:自定义一个4*4的二维整型数组(直接在程序中初始化该数组),先打印输出该数组,然后求出每一行中的最小值,将其组成一个新的一维数组并打印输出。
好的,这是一个 C 语言题目,我可以回答。以下是代码实现:
```
#include <stdio.h>
int main() {
int arr[4][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16}};
int min[4];
int i, j;
printf("原始二维数组:\n");
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
printf("%2d ", arr[i][j]);
}
printf("\n");
}
printf("每一行中的最小值:\n");
for (i = 0; i < 4; i++) {
min[i] = arr[i][0];
for (j = 1; j < 4; j++) {
if (arr[i][j] < min[i]) {
min[i] = arr[i][j];
}
}
printf("%d ", min[i]);
}
printf("\n");
return 0;
}
```
输出结果如下:
```
原始二维数组:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
每一行中的最小值:
1 5 9 13
```
希望我的回答能够帮到您!