你如何在C中打印double数组?

时间:2016-10-25 03:19:30

标签: c arrays

我到处都看了,我正试图在我的c程序中找到一种打印双数组的方法。我不打算打印Code 2d数组,而是打印一个双倍的数组。

这是我的代码:

#include <stdio.h>

void printarray(double array[]){
   int i;
   for(int i=0;i<=5;i++){
        printf("%.2f\n",array[i])
   }
}

int main() {

    double array={1.0,2.0,3.0,4.0,5.0};

}

2 个答案:

答案 0 :(得分:2)

<强>错误

  1. 该行

    printf("%.2f\n",array[i])
    

    不以分号;结尾。

  2. 您没有以正确的方式定义数组。对于数组定义,您需要使用[]。所以定义应该是

    double array[] = {1.0, 2.0, 3.0, 4.0, 5.0};
    
  3. <强>警告

    1. 您可能没有提供完整的代码,但您从未调用printarray函数。

    2. 您宣布int i两次。

    3. 数组中只有5个元素,因此在for循环中,您的测试应该是i < 5而不是i <= 5

    4. 最后,我建议你应该提供一个函数原型。

    5. 这是格式化的新代码

      #include <stdio.h>
      
      void printarray(double[]);
      
      int main(void) {
          double array[] = {1.0,2.0,3.0,4.0,5.0};
          printarray(array);
      
          return 0;
      }
      
      void printarray(double array[]) {
          int i;
          for(i = 0; i < 5; i++) {
              printf("%.2f\n",array[i]);
          }
      }
      

答案 1 :(得分:-1)

下面的工作代码。您通常应该将数组的大小作为第二个参数传递。但这是我想你想要发生的基本功能。

#include <stdio.h>

void printArray(double array[])
{
  int i;
  for(i = 0; i<5; i++)
    {
      printf("%.2f ", array[i]);
    }
}


int main()
{

  double myArray[5] = {1.0, 2.0, 3.0, 4.0, 5.0};

  printArray(myArray);

  return 0;
}