2017-10-17 10 views
0

아래는 실행하려는 프로그램입니다. 문제가있는 부분은 for 루프를 실행하여 총 투표 수를 계산하는 것입니다. total_votes + = col_totals [i]가 작동하지 않는 이유를 모르겠습니다. 프로그램을 실행할 때 합당하지 않은 총 수를 얻습니다. 예. 42003993.그래서 C로 투표 프로그램을 작성 중이며 총 투표 수를 계산할 for 루프를 만들 수 없습니다.

int main() 
{ 
    int votes[5][4]={192,48,206,37, 
        147,90,312,21, 
        186,12,121,38, 
        114,21,408,39, 
        267,13,382,29}; 

    char cand[4]={'A','B','C','D'}; 

    int row_totals[5]; 
    int col_totals[4]; 

    int row, col; 
    for(col=0;col<=3;col++) { 
     col_totals[col]=0; 
     for(row=0;row<=4;row++) { 
      col_totals[col] += votes[row][col]; 
     } 
    } 

total_votes는 내가 문제가있는 것입니다. row_totals 또는 col_totals를 사용하여 for 루프를 만들어 총 투표 수를 계산해야합니다. 그것은 나를 이렇게 여기에서 자세한 내용을 추가하지 않고 게시하지 않습니다 일부 필러 텍스트입니다 :

int total_votes; 
    int i; 
    for (i=0; i<=3; i++) { 

     total_votes += col_totals[i]; 
    } 


    float percent[4]; //Not finished yet 


    for(row=0;row<=4;row++) 
    { 
     row_totals[row]=0; 

     for(col=0;col<=3;col++) 
     { 
      row_totals[row] += votes[row][col]; 
     } 
    } 

여기 단지 참조 코드의 나머지 부분입니다 : 이것은 내가 가지고있는 것입니다.

printf("   Candidate Candidate Candidate Candidate Total\n"); 
    printf(" Precinct  A   B   C   D  Votes\n"); 
    for(row=0;row<=4;row++) 
    { 
     printf("%6d",row+1); 
     for(col=0;col<=3;col++) 
     { 
      printf("%12d",votes[row][col]); 
     } 
     printf("%11d\n",row_totals[row]); 
    } 
    printf("\nTotal:"); 
    for (col = 0; col <=3; col++) { 
     for(row=0;row<=4;row++); 
     { 
     printf("%12d",col_totals[col]); 
     } 
    } 
    printf("%11d\n", total_votes); 
    return 0; 


} 
+1

'{{192,48,206,37}}으로 초기화해야합니다 [5] [4] , {147,90,312,21}, {186,12,121,38}, {114,21,408,39}, {267,13,382,29}}; –

+0

total_votes를 0으로 초기화하지 않았습니다. – thecodemaster

답변

3
int total_votes = 0; 

당신은 + = total_votes으로 시작하지만, 처음 total_votes 무엇인가? 0으로 설정하지 않고, 변수를 생성하기 전에 부여 된 메모리 주소가 임의의 숫자입니다.

+0

표준 참고 사항 : 컴파일러 경고를 무시하지 마십시오! –

+0

-Wall은 친구입니다 – Tyler

+0

내가 그걸 시도했다고 생각하는 곳. 나는 내가 알지도 못하는 해결책을 생각해 내기 위해 여러 가지 조합을 시도했다. 고마워, 그렇게 간단 해. 이제 작동합니다. 나는 꼬임 문제를 해결하려고 아직 프로그래밍을하지 못했습니다. – thecodemaster