// 编写一个程序,要求用户输入一个整数n,然后动态创建一个整数数组,并通过循环从用户输入中读取n个整数并存储到数组中。然后,使用realloc函数将数组的大小减半,并打印减半后的数组内容。 #include #include int main() { int n; printf("请输入一个整数: "); scanf("%d", &n); int *nums = (int *)malloc(n * sizeof(int *)); if (NULL == nums) { perror("malloc"); exit(-1); } printf("请输入 %d 个整数: ", n); for (int i = 0, temp = 0; i < n; i++) { scanf("%d", &temp); nums[i] = temp; } int halfN = n / 2; // n 的一半 nums = (int *)realloc(nums, halfN * sizeof(int *)); printf("减半后的数组内容打印如下: \n"); while (halfN--) printf("%d ", *nums++); printf("\n"); free(nums); return 0; }