外部范围时未定义变量

时间:2017-11-27 13:07:12

标签: c arrays matrix random

编写一个程序,让用户抛出五个骰子并以“图形方式”显示结果在屏幕上。
 该程序应该首先通过填充一个介于1之间的5个数字的数组来模拟五次掷骰然后,函数应该通过在屏幕上显示字符和计算的函数来“绘制”结果总和。
我收到第一个函数的错误消息,它说我没有定义矩阵,我在“if”中定义了。

#include <stdio.h> 
int sumOfDie(int inputArray[], int arraySize); 
int drawDie(int inputArray[], int arraySize)
{
int i, row, column=0;

for (i=0; i<arraySize; i++)  //determine the graphic number from the random number
{
    if (inputArray[i]==1)
    {
        char matrix [3][4] = {{"   "},{" * "},{"   "}};
    }
    if (inputArray[i]==2)
    {
        char matrix [3][4] = {{"*  "},{"   "},{"  *"}};
    }
    if (inputArray[i]==3)
    {
        char matrix [3][4] = {{"*  "},{" * "},{"  *"}};
    }
    if (inputArray[i]==4)
    {
        char matrix [3][4] = {{"* *"},{"   "},{"* *"}};
    }
    if (inputArray[i]==5)
    {
        char matrix [3][4] = {{"* *"},{" * "},{"* *"}};
    }

    for (row=0; row<3; row++) //Print out the matrix
    {
        for(column=0; column<4; column++)
        {
            printf("%c     ", matrix[row][column]);
        }
        printf("\n");
    }
}

}
int sumOfDie(int inputArray[], int arraySize) 
{
    int i, sum=0;
    for (i=0; i<arraySize; i++)
    {
        sum=sum+inputArray[i];
    }
    return sum;
}



int main(void)
{
    int i;
    int inputArry[5];
    srand(time(NULL)); 


for(i=0; i<5; i++)
{
    inputArry[i] = rand()%5+1;
}

for (i=0; i<5; i++)
{
    printf("Number:%d\n", inputArry[i]);
}

drawDie(inputArry, 5);

sum = sumOfDie(inputArray,5)
printf("The sum of %i + %i + %i + %i + %i = %i", inputArry[0], inputArry[1], inputArry[2], inputArry[3], inputArry[4], sum);

return 0;
}

0 个答案:

没有答案