2016-11-21 9 views
-6

少し問題があり、私はその底に到達できません。 {35行目は宣言を期待していた。私は私の人生がそれを修正することはできません。ここではすべてのコードをまとめていますが、{問題の発生場所の{の隣にあるコードにコメントしました。宣言が必要CPP

#include <stdio.h> 
char ScoreMarks(float percentage); 
char ScoreRawMarks(float scoreAwarded, float mscoreAvailable); 

int main(void) 
{ 
    float percent, Awarded, Available; 
    char result; 
    printf("Enter Score Available\n"); 
    scanf("%f", &Available); 
    printf("Enter Score Awarded\n"); 
    scanf("%f", Awarded); 
    result = ScoreFromRawMarks(Awarded, Available); 
    printf("Score Achieved = %c\n", result); 
} 
char ScoreFromPercentage(float percentage) 
{ 
    char output; 
    if (percentage >= 90.0) { 
     output = 'A'; 
    } 
    else if (percentage >= 70.0) { 
     output = 'B'; 
    } 
    else if (percentage >= 50.0) { 
     output = 'c'; 
    } 
    else if (percentage >= 30.0) { 
     output = 'D'; 
    } 
    else { 
     output = 'F'; 
    } 
    return output; 
}; 
char ScoreFromRawMarks(float scoreAwarded, float scoreAvailable, float percentage); 
{ //EXPECTED DECLARATION 
    char output; 
    percentage = (scoreAwarded/scoreAvailable) * 100; 
    output = ScoreFromPercentage(scoreAwarded, scoreAvailable); 
    return output; 
} 
+3

これは本当に 'C++'ですか?私には 'c'のように見えます。 – drescherjm

+6

前の行の最後にセミコロンがあります。 –

+0

明らかに、実装の宣言の "Copy-Paste"を実行し、末尾のセミコロンを削除するのを忘れた... "Do not do Copy-Paste"の聖人ではない間に、ひどく傷つきます...私を信じてください... – WhiZTiM

答えて

2

あなたはコンパイラが使用すると、関数のプロトタイプをやっていると思わせる、この行の末尾にセミコロンがあります。

char ScoreFromRawMarks(float scoreAwarded, float scoreAvailable, float percentage); 
{ //EXPECTED DECLARATION 
1

が前の行からセミコロンを削除しますか?

1

エラーを理解するということは、他の人のようにセミコロンを持っていて、行が実行されることを期待していたということです。期待される宣言エラーはセミコロンとブラケットを扱わなければならないので、常にそれらをチェックしてください。

関連する問題