1

入力されたデータの範囲を表示するために、2 つの関数と配列を使用してプログラムを作成しています。これで大部分は完了しましたが、理解できないエラー メッセージがいくつか表示され、メイン関数で苦労しています。何か案は?

 /* program to display frequency counts of traffic accidents */ 

#include <stdio.h>

void updateRange(int accident, int accident_range[]);
void displayRange(int accident_range[]);

int main(void)
{
int accident;
const int SIZE = 6;
int accident_range[SIZE];
  while (accident < SIZE)
  {
      accident_range[accident] = 0;
    ++accident;
  }    
  updateRange(&accident, &accident_range);           
  displayRange(&accident_range[]);

return(0);
}


void updateRange(int accident, int accident_range[])
{
accident = 0;   
     do
{
    printf("Enter an accident count (negative to end):");
    scanf("%d", &accident);

    if (accident == -1)
        break;

        else if(accident >= 0 && accident <= 99)
        accident_range[0]++;

        else if(100 <= accident && accident <= 199)
         accident_range[1]++;

        else if(200 <= accident && accident <= 299)
         accident_range[2]++;

        else if(300 <= accident && accident <= 399)
         accident_range[3]++;

        else if(400 <= accident && accident <= 499)
         accident_range[4]++;

        else
         accident_range[5]++;

 } while (accident != -1);
}

void displayRange(int accident_range[])
{
    printf("Range       Frequency            \n" ) ; 
    printf("   0-99             %d\n", accident_range[0]);
    printf("100-199             %d\n", accident_range[1]);  
    printf("200-299             %d\n", accident_range[2]); 
    printf("300-399             %d\n", accident_range[3]); 
    printf("400-499             %d\n", accident_range[4]); 
    printf("500 or above        %d\n", accident_range[5]); 
}
4

2 に答える 2