我到处都看了,我正试图在我的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};
}
答案 0 :(得分:2)
<强>错误强>
该行
printf("%.2f\n",array[i])
不以分号;
结尾。
您没有以正确的方式定义数组。对于数组定义,您需要使用[]
。所以定义应该是
double array[] = {1.0, 2.0, 3.0, 4.0, 5.0};
<强>警告强>
您可能没有提供完整的代码,但您从未调用printarray
函数。
您宣布int i
两次。
数组中只有5个元素,因此在for循环中,您的测试应该是i < 5
而不是i <= 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;
}