我需要使用malloc和动态分配的数组,但是我需要打印用户输入

我需要使用malloc和动态分配的数组,但是我需要打印用户输入,c,malloc,C,Malloc,差不多。我需要向用户询问元素的数量,然后询问他们想要的整数,最后打印出所有整数 这是我目前的代码: int main(void) { int user_input = 0, elements = 0; printf("How many int elements will you enter?\n"); scanf("%d", &elements); int* dynamic_array = (int *)malloc(sizeof(double)* elements);

差不多。我需要向用户询问元素的数量,然后询问他们想要的整数,最后打印出所有整数

这是我目前的代码:

int main(void)
{
  int user_input = 0, elements = 0;
  printf("How many int elements will you enter?\n");
  scanf("%d", &elements);

  int* dynamic_array = (int *)malloc(sizeof(double)* elements);

  for (int i = 0; i < elements; i++)
  {
    printf("Element %d?\n", i + 1);
    scanf("%d", &dynamic_array[i], i + 1);
  }

  for (int printf_number = 1; printf_number <= elements; printf_number++)
  {
    printf("Element %d: %d\n", printf_number, (dynamic_array[user_input]));
  }

  free(dynamic_array);
  dynamic_array = 0;
  return 0;
}
int main(无效)
{
int user_输入=0,元素=0;
printf(“您将输入多少int元素?\n”);
scanf(“%d”和元素);
int*动态数组=(int*)malloc(sizeof(double)*元素);
for(int i=0;i对于(int printf_number=1;printf_number
for)(int printf_number=1;printf_number1期:您正在分配
sizeof(double)
来存储int
问题2:您没有遍历数组来打印数字

int main(void)
{
  int user_input = 0, elements = 0;
  printf("How many int elements will you enter?\n");
  scanf("%d", &elements);

  int* dynamic_array = (int *)malloc(sizeof(int)* elements);
  if(dynamic_array == NULL) {
     perror(" Out of memory ");
     return 0;
  }

  for (int i = 0; i < elements; i++)
  {
    printf("Element %d?\n", i + 1);
    scanf("%d", &dynamic_array[i]);
  }

  for (int printf_number = 0; printf_number < elements; printf_number++)
  {
    printf("Element %d: %d\n", printf_number+1, dynamic_array[printf_number]);
  }

  free(dynamic_array);
  dynamic_array = 0;
  return 0;
}
int main(无效)
{
int user_输入=0,元素=0;
printf(“您将输入多少int元素?\n”);
scanf(“%d”和元素);
int*动态数组=(int*)malloc(sizeof(int)*元素);
if(动态数组==NULL){
perror(“内存不足”);
返回0;
}
for(int i=0;i
请在此处发布代码。您对代码有什么问题?请详细说明?并请花一些时间。它说代码太长,错误是只有一个元素打印,而不是所有元素,我不知道如何打印所有元素。谁/什么是“It”?这是因为你应该编辑问题,而不是将其作为注释发布-因为作为注释,它看起来很可怕且未格式化。等一下,它不应该是双精度的。在我的屏幕上,我没有双精度的。此代码不起作用。抱歉,它实际上只是犯了一个错误
int main(void)
{
  int user_input = 0, elements = 0;
  printf("How many int elements will you enter?\n");
  scanf("%d", &elements);

  int* dynamic_array = (int *)malloc(sizeof(int)* elements);
  if(dynamic_array == NULL) {
     perror(" Out of memory ");
     return 0;
  }

  for (int i = 0; i < elements; i++)
  {
    printf("Element %d?\n", i + 1);
    scanf("%d", &dynamic_array[i]);
  }

  for (int printf_number = 0; printf_number < elements; printf_number++)
  {
    printf("Element %d: %d\n", printf_number+1, dynamic_array[printf_number]);
  }

  free(dynamic_array);
  dynamic_array = 0;
  return 0;
}