2016-08-03 7 views
-1

Mathe Quiz fragt, wie viele Probleme Sie lösen möchten und zeigt zufällige Zahlen der Addition und Subtraktion dann Noten Ihre Reaktion auf die Probleme. Das Ding, das Probleme hat, ist es richtig auszudrucken. Ich muss zeigen, wie viele ich richtig gemacht habe und wie viele ich alle zusammen versucht habe. Beispiel 4 aus 5 korrekt (Erhaltung: 2/5 korrekt) aber im dies zum Beispiel „Erhaltung: 2/-1832609951“ wiederzubeleben Können Sie jemand Hilfe danken!Anfänger zum C-Programm: Math Quiz Note

umfassen

int main() 
    { 
    int NumberOfTimes,AddAns,SubAns,AddCorrect=0,SubCorrect=0,CorrectAnsAdd,CorrectAnsSub,TotalCorrect,TotalWrong,Add$ 
    int i,a,b,c,d,e,f,g; 

    printf("\n"); 
    printf("-------------------MATH QUIZ------------------------\n"); 
    printf("Enter the number of Math problems you want to solve:"); 
    scanf("%d", &NumberOfTimes); 
    printf("\n"); 
    srand(time(NULL)); 
    for (i=0;i<NumberOfTimes;++i) 
    { 

     b = rand() %3 + 1; 
     c = rand() %3 + 1; 

     a = rand() %2 + 1; 


     if (a == 1) 
     { 
     printf("%d + %d = ", b,c); 
     scanf("%d", &AddAns); 
     d = b + c; 
     if (AddAns == d) 
      { 
      printf(" +Correct\n"); 
      AddCorrect = AddCorrect + 1; 
      } 
     else 
      { 
      printf(" +Wrong, it was %d\n", d); 
      AddIncorrect = AddIncorrect + 1; 
      } 
     } 
     if (a == 2) 
     { 
     printf("%d - %d = ", b,c); 
     scanf("%d", &SubAns); 
     g = b - c; 
     if (SubAns == g) 
      { 
      printf(" +Correct\n"); 
      SubCorrect = SubCorrect + 1; 
      } 
     else 
      { 
      printf(" +Wrong, it was %d\n", g); 
      SubIncorrect = SubIncorrect + 1; 
      } 

     } 

     } 
     TotalCorrect = AddCorrect + SubCorrect; 
     TotalWrong = AddIncorrect + SubIncorrect; 
     printf("\n"); 
     printf("Grade: %d/%d\n",TotalCorrect,TotalWrong); 
     printf("\n"); 
     return 0; 
} 
+1

Ihre variable Deklarationszeile hier unvollständig ist getan sollte .. Was hast du nach TotalWrong geschrieben? –

Antwort

1

ich auf das Problem sah wieder und die Lösung fand ich dies für „Anzahl von Unrecht/Total“

TotalCorrect = AddCorrect + SubCorrect; 
    printf("\n"); 
    printf("Grade: %d/%d\n",TotalCorrect,NumberOfTimes); 
    printf("\n"); 
    return 0;