C语言malloc函数问题

2024-12-01 18:50:09
推荐回答(3个)
回答1:

#include
#include
int main (void)
{
 double * ptd;
 int max;
 int number;
 int i=0;

 puts("What is the maximum number of type double entries?");
 scanf("%d",&max);
 ptd = (double * )malloc(max * sizeof(double));
 if(ptd == NULL)
 {
  puts("Memory allocation failed.Goodbye.");
  exit(EXIT_FAILURE);
 }
 //ptd现在指向有max个元素的数组
 puts("Enter the values(q to quit):");
 while(i ++i;
 
 printf("Here are your %d entries:\n",i);//这句建议最好不要把赋值和输出写在一起,最好分开写便于理解
 number = i;
 for(i = 0;i < number;i++)
 {
  printf("%7.2f",ptd[i]);
  if( i%7 == 6)
   putchar('\n');
 }
 if(i % 7!=0)
  putchar('\n');
    puts("Done.");
    free(ptd);

    return 0;
}

回答2:

i&&是短路求值,当i

回答3:

需要加一个malloc.h的头文件,即#include