编写程序,利用malloc函数开辟动态存储单元,存放输入的3个整数,然后求这3个数中的
时间: 2023-10-06 08:02:48 浏览: 253
编写程序实现这个需求,以下是示例代码:
```C
#include <stdio.h>
#include <stdlib.h>
int main() {
int *nums; // 定义一个指针,用于指向动态分配的内存空间
nums = (int*)malloc(3 * sizeof(int)); // 使用malloc函数分配3个整型变量大小的内存空间
// 输入3个整数
printf("请输入3个整数:\n");
for (int i = 0; i < 3; i++) {
scanf("%d", &nums[i]);
}
// 找出最大值
int max = nums[0];
for (int i = 1; i < 3; i++) {
if (nums[i] > max) {
max = nums[i];
}
}
printf("最大值为:%d\n", max);
// 释放动态分配的内存空间
free(nums);
return 0;
}
```
这段代码中,我们首先使用`malloc`函数分配了3个整型变量大小的内存空间,并通过指针`nums`来指向这块内存空间。然后,利用循环和`scanf`函数输入3个整数,并存放在这块内存空间中。接着,我们使用循环和一个辅助变量`max`找出这3个数中的最大值。最后,在输出最大值之后,我们使用`free`函数释放了动态分配的内存空间,以防止内存泄漏。
阅读全文