利用指针找出10个数中的最大数及其位置。
时间: 2023-06-15 17:08:10 浏览: 95
求十个数中最大的数
可以使用一个指针变量来遍历数组,同时使用另一个指针变量来记录最大值的位置。以下是示例代码:
```c
#include <stdio.h>
int main() {
int arr[10] = {5, 2, 9, 1, 10, 7, 3, 8, 4, 6};
int *p = arr; // 指向数组的第一个元素
int *max = arr; // 指向当前最大值的位置
int i;
for (i = 1; i < 10; i++) { // 从第二个元素开始遍历
if (*(p+i) > *max) {
max = p+i; // 更新最大值的位置
}
}
printf("最大的数是:%d,位置是:%d\n", *max, max-arr);
return 0;
}
```
输出结果为:
```
最大的数是:10,位置是:4
```
注意,最大值的位置需要用指针相减的方式计算,因为数组中的元素在内存中是连续存储的,而指针之间的差值就是它们所指向的元素之间的距离。
阅读全文