C语言不支持动态数组,也就是说,数组在定义时就要指定长度,把输入数作为它的长度那就说明定义时没有指定长度,这是不合法的。

使用 指针+动态分配malloc

	int* p;
	int n;
	scanf("%d", &n);
	p = (int*)malloc(sizeof(int) * n);