用指针的方法求10个数的最大值和最小值之差
时间: 2023-11-06 12:08:33 浏览: 96
求最大值和最小值
好的,这是一个简单的 C 语言问题。我们可以使用指针来解决这个问题,代码如下:
```c
#include <stdio.h>
int main() {
int nums[10] = {10, 5, 3, 8, 6, 2, 9, 4, 1, 7}; // 10个数字
int *max = &nums[0]; // 最大值指针初始指向第一个数
int *min = &nums[0]; // 最小值指针初始指向第一个数
for (int i = 0; i < 10; i++) {
if (nums[i] > *max) {
max = &nums[i]; // 更新最大值指针
}
if (nums[i] < *min) {
min = &nums[i]; // 更新最小值指针
}
}
printf("最大值为:%d\n", *max);
printf("最小值为:%d\n", *min);
printf("最大值和最小值之差为:%d\n", *max - *min);
return 0;
}
```
输出结果为:
```
最大值为:10
最小值为:1
最大值和最小值之差为:9
```
该程序先定义了一个包含 10 个数字的数组 `nums`,然后定义了两个指针 `max` 和 `min` 分别指向数组中的第一个元素。接着,程序通过循环遍历整个数组,如果遇到更大的数,则更新 `max` 指针,如果遇到更小的数,则更新 `min` 指针。最后,程序输出最大值、最小值和它们之差。
阅读全文