#include<
stdio.h>
#include<malloc.h>
int main()
{
int i,n,*p;
scanf("%d",&n);
p=(int*)malloc(sizeof(int)*n);
for(i=0;i<n;i++)
{
scanf("%4d",&p[i]);
}
printf("您输入的数据有:\n");
for(i=0;i<n;i++)
{
printf("%-4d",p[i]);
}
printf("\n");
return 0;
}
追问非常感谢,但是你能 给我讲讲
p=(int*)malloc(sizeof(int)*n);
for(i=0;i<n;i++)
{
scanf("%4d",&p[i]);
}
是什么吗?希望能详细一点。
追答因为不知道你要输入几个数,所以先定义一个指向整形的指针,当你输入n之后,根据你输入的n分配内存,
p=(int*)malloc(sizeof(int)*n);//根据n分配内存,比如n为10,就分配一段能存放10个整形的 //内存,然后就可以像数组一样调用
for(i=0;i<n;i++)
{
scanf("%4d",&p[i]);//存放你输入的n个数
}