C语言利用指针变量求10个数中的最大值。
时间: 2023-09-16 19:08:05 浏览: 64
可以使用指针变量遍历数组,找到最大值。
以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int arr[10] = {5, 8, 10, 3, 6, 7, 2, 9, 1, 4};
int *p = arr;
int max = *p;
for (int i = 0; i < 10; i++) {
if (*(p+i) > max) {
max = *(p+i);
}
}
printf("最大值为:%d\n", max);
return 0;
}
```
首先定义一个长度为10的整型数组 `arr`,并将第一个元素的地址赋值给指针变量 `p`。然后将 `max` 的值初始化为 `arr` 的第一个元素的值。
使用 `for` 循环遍历数组,依次比较每个元素的值与 `max` 的值,如果大于 `max`,就将该元素的值赋值给 `max`。
最后输出 `max` 的值即可。
相关问题
用c语言利用指针变量求10个数中的最大值。
可以使用循环遍历数组,利用指针变量找到最大值。以下是一份示例代码:
```c
#include <stdio.h>
int main() {
int arr[10] = {1, 9, 5, 7, 3, 8, 2, 6, 4, 0};
int *ptr = arr; // 指向数组的指针
int max = *ptr; // 初始化最大值为第一个元素
for (int i = 0; i < 10; i++) {
if (*(ptr + i) > max) { // 利用指针访问数组元素
max = *(ptr + i);
}
}
printf("最大值为:%d\n", max);
return 0;
}
```
输出结果为:最大值为:9
用c语言,利用指针找两个数中的最大值
可以使用指针来实现找两个数中的最大值,具体的代码如下所示:
```c
#include <stdio.h>
int max(int *a, int *b) {
if (*a > *b) {
return *a;
} else {
return *b;
}
}
int main() {
int x = 10, y = 20;
int *a = &x, *b = &y;
printf("Max value: %d\n", max(a, b));
return 0;
}
```
在代码中,我们首先定义了一个 `max` 函数,该函数接收两个 `int` 类型的指针作为参数,然后使用指针解引用来比较两个数的大小,最后返回较大的那个数。
在 `main` 函数中,我们定义了两个 `int` 类型的变量 `x` 和 `y`,然后分别取它们的地址赋值给指针 `a` 和 `b`,最后调用 `max` 函数来找到两个数中的最大值。