求大神解一道C语言题

 

参考GPT和自己的思路:

根据题目要求,需要求出给定数组中的最大值和最小值。可以用以下方式实现:

#include <stdio.h>

int main() {
    int a[] = {35, 12, 1, 55, 99, 23, 67, 77, 88};
    int max = a[0];
    int min = a[0];
    int len = sizeof(a) / sizeof(a[0]);
    for (int i = 1; i < len; i++) {
        if (a[i] > max) {
            max = a[i];
        }
        if (a[i] < min) {
            min = a[i];
        }
    }
    printf("最大值:%d,最小值:%d", max, min);
    return 0;
}

代码中,首先定义了一个给定数组a,并定义了一个len表示数组长度。然后利用for循环遍历数组,通过比较大小得到最大值和最小值,最后输出即可。

参考GPT和自己的思路:

根据题目要求,我们需要编写一个程序,实现输入5个整数,然后将它们倒序输出。

可以使用数组来存储这5个整数,然后通过for循环倒序输出即可。

以下是一个可能的代码实现:

#include <stdio.h>

int main() {
    int nums[5];
    printf("请输入5个整数:\n");
    for (int i = 0; i < 5; i++) {
        scanf("%d", &nums[i]);
    }
    printf("倒序输出:");
    for (int i = 4; i >= 0; i--) {
        printf("%d ", nums[i]);
    }
    printf("\n");
    return 0;
}

当然,也可以使用指针来实现倒序输出。

以下是一个可能的使用指针的代码实现:

#include <stdio.h>

int main() {
    int nums[5];
    printf("请输入5个整数:\n");
    for (int i = 0; i < 5; i++) {
        scanf("%d", nums + i);
    }
    printf("倒序输出:");
    for (int i = 4; i >= 0; i--) {
        printf("%d ", *(nums + i));
    }
    printf("\n");
    return 0;
}