C语言利用指针编程实现,借助指针变量找出数组元素中最大值所在位置并输出该最大值
时间: 2024-03-22 13:39:58 浏览: 108
c语言+从键盘输入10个无序的整数,存放在数组中,找出数组中最大值与最小值的所在的位置,并输出数组元素所在的位置与数组元素的值
5星 · 资源好评率100%
好的,我来为您解答这个问题。
代码如下:
```c
#include <stdio.h>
int main()
{
int arr[] = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100};
int n = sizeof(arr) / sizeof(arr[0]);
int *ptr = arr;
int max = *ptr;
int pos = 0;
for (int i = 1; i < n; i++)
{
if (*(ptr + i) > max)
{
max = *(ptr + i);
pos = i;
}
}
printf("最大值为 %d,位于数组的第 %d 个位置\n", max, pos);
return 0;
}
```
代码解析:
1. 首先定义一个整型数组 `arr`,并初始化数组元素。
2. 通过 `sizeof` 运算符计算数组元素个数,保存到变量 `n` 中。
3. 定义一个指向整型的指针 `ptr`,并将其指向数组的第一个元素。
4. 定义变量 `max` 和 `pos`,分别表示最大值和最大值所在位置,初始值分别为数组的第一个元素和 0。
5. 利用 `for` 循环遍历数组,找出最大值,并记录其位置。
6. 输出最大值和最大值所在位置。
希望能够帮到您,如果您还有其他问题可以继续问我哦!
阅读全文