怎样用scanf实现 输入一个数列,第一个数代表后面数字的个数,然后分别把这几个数字的值赋给变量?

来源:百度知道 编辑:UC知道 时间:2024/06/09 07:00:07

#include<stdio.h>
#include<malloc.h>
int main()
{
int n, *Matrix;
int i = 0;
scanf("%d", &n);
Matrix = (int*)malloc(n);
while(i++ < n)
scanf("%d", &Matrix[i-1]);

/*输出如下*/
for(i = 0; i < n; i++)
printf("%d ", Matrix[i]);
printf("\n");
return 0;
}

示例代码,整形为例:
int n, *pn;
int i;
scanf("%d", &n);
pn = malloc(n * sizeof(int));
i = 0;
while(i < n) { scanf("%d", &pn[i]);i++; }

//.. free(pn);

int n, *pn;
int i;
scanf("%d", &n);
pn = malloc(n * sizeof(int));
i = 0;
while(i < n) { scanf("%d", &pn[i]);i++; }

//.. free(pn);