c程序功能图参数

时间:2016-03-16 16:57:26

标签: c function

我是c编程新手,我的c程序有问题。 我想将10x20图表作为参数传递给函数。 但我不知道怎么做。

它给了我这个编译错误:

prog.c:71:6: error: conflicting types for 'thermokrasies'
 void thermokrasies(float n[10][20]){
      ^
prog.c:2:6: note: previous declaration of 'thermokrasies' was here
 void thermokrasies(float);
      ^

代码是:

#include <stdio.h>
void temperatures(float);
int main(void) {
    float array[10][20];
    array[0][0]=3.00;
    array[0][19]=-1.50;
    array[9][0]=3.50;
    array[9][19]=-1.00;
    for (i=0; i<1; i++){
        for (j=1; j<19; j++){
            array[i][j]=2.00;
        }
    }
    for (i=9; i<10; i++){
        for (j=1; j<19; j++){
            array[i][j]=3.00;
        }
    }
    for (j=0; j<1; j++){
        for (i=1; i<9; i++){
            array[i][j]=4.00;
        }
    }
    for (j=19; j<20; j++){
        for (i=1; i<9; i++){
            array[i][j]=-5.00;
        }
    }
    for (i=1; i<9; i++){
        for (j=1; j<19; j++){
            array[i][j]=1.00;
        }
    }
    temperatures(array[10][20]);
}

void temperatures(float n[10][20]){
    int i,j;
    float h,k,m,p0,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10;
    h=n[0][0];
    k=n[0][0];
    for (i=0; i<10; i++){
        for (j=0; j<20; j++){
            if (n[i][j]>h)
                h=n[i][j];
            else if (n[i][j]<k)
                k=n[i][j];
            else{
            }
        }
    }
    printf("To megalytero stoixeio einai to %.2f kai to mikrotero to %.2f.\n",h,k);
    m=(h-k)/10;
    p0=k;
    p1=m+p0;
    p2=m+p1;
    p3=m+p2;
    p4=m+p3;
    p5=m+p4;
    p6=m+p5;
    p7=m+p6;
    p8=m+p7;
    p9=m+p8;
    p10=m+p9;
    printf("Oi perioxes 8ermokrasiwn einai: \n %.2f ews %.2f \n %.2f ews %.2f \n %.2f ews %.2f \n %.2f ews %.2f \n %.2f ews %.2f \n %.2f ews %.2f \n %.2f ews %.2f \n %.2f ews %.2f \n %.2f ews %.2f \n %.2f ews %.2f",p0,p1,p1,p2,p2,p3,p3,p4,p4,p5,p5,p6,p6,p7,p7,p8,p8,p9,p9,p10);
}

1 个答案:

答案 0 :(得分:0)

在开头声明如下:

void temperatures(float n[10][20]);

而不是

void temperatures(float);

然后将函数void temperature(float n[10][20])称为

temperatures(array);

而不是

temperatures(array[10][20]);

此外,您尚未在i中声明变量jint main()

int i, j;

使用前。