浙江理工大学入队200题——19D
问题 D: 动态申请内存(要求用指针完成)
题目描述
malloc是一个动态申请内存的函数,使用时需加头文件#include<malloc.h>
如申请3个int型的空间:
int *p=NULL;
p=(int )malloc(sizeof(int)3);
现要求你用动态申请内存的方式,输入n个整数,存到申请的内存空间里,并按照输入相反的顺序输出
一般,在p不用后,我们用
free(p);
释放内存
输入
第一行,输入一个整数n
第二行,输入n个整数
输出
输出n行,每行一个整数,顺序为原来输入的反序
样例输入 Copy
3
2 3 4
样例输出 Copy
4
3
2
题解
要学会申请内存的用法,,这道你vector也可以,不知道它用法的话你去CSDN上找吧
代码
点击查看代码
#include<malloc.h>
#include<stdio.h>
int main()
{
int *p=NULL;
int n;
scanf("%d",&n);
p=(int *)malloc(sizeof(int)*(n+1));
for(int i=0;i<n;i++)
{
scanf("%d",p);
p++;
}
p--;
for(int i=n-1;i>0;i--)
{
printf("%d\n",*p);
p--;
}
printf("%d\n",*p);
return 0;
}
本文来自博客园,作者:shany212,转载请注明原文链接:https://www.cnblogs.com/codeshany/p/zstu_200_19D.html