2016-04-09 6 views
-1

私はそれを得ることができません、何が間違っていますか? 変数の名前を変更しようとしましたが、何も機能していません。「ACIRCLEを関数として使用できません」というエラーが表示されています。 コードは次のとおりです。"ACIRCLEを関数として使用できません" Cプログラミングのエラー

#include <stdio.h> 
#include <stdlib.h> 
int Get_Radius(int R); 
int Get_Length(int L); 
float ACIRCLE(int R,float A); 
int main(){ 
    int R,L; 
    float A,Area,ACIRCLE; 
    R=Get_Radius(R); 
    L=Get_Length(L); 
    Area=ACIRCLE(A); 
    printf("%f",ACIRCLE); 
    system("pause"); 
    return 0; 
} 
float ACIRCLE(int R,float A) 
{ 
    R=Get_Radius(R); 
    A=R*R*3.14; 
    return A; 
} 

int Get_Radius(int R) 
{ 
    printf("Input the Radius of a circle:\n"); 
    scanf("%d",&R); 
    return R; 
} 
int Get_Length(int L) 
{ 
    printf("Input the Length of the square\n"); 
    scanf("%d",L); 
    return L; 
} 

編集

コメントで述べたように、私は、コードを編集した今、私はエラーを取得しないが、私は値を入力するたびに.exeファイルは動作を停止します。あなたは助けてもらえますか?

現在のコード:助けを事前に

#include <stdio.h> 
#include <stdlib.h> 
int Get_Radius(int R); 
int Get_Length(int L); 
float ACIRCLE(int R,float A); 
int main(){ 
    int R,L; 
    float A,Area; 
    R=Get_Radius(R); 
    L=Get_Length(L); 
    Area=ACIRCLE(A); 
    printf("%f\n",Area); 
    system("pause"); 
    return 0; 
} 


int Get_Radius(int R) 
{ 
    printf("Input the Radius of a circle:\n"); 
    scanf("%d",&R); 
    return R; 
} 
int Get_Length(int L) 
{ 
    printf("Input the Length of the square:\n"); 
    scanf("%d",L); 
    return L; 
} 
float ACIRCLE(int R,float A) 
{ 
    R=Get_Radius(R); 
    A=R*R*3.14; 
    return A; 
} 

おかげ..

+1

でなければなりません。 –

答えて

2

あなたは変数を使用しようという意味も優先されますACIRCLE機能、同じ名前のローカル変数を持っています機能として。

解決策は、ACIRCLE変数を宣言せず、代わりにAreaを印刷することです。コメントにDiniduで述べたように、あなたが、唯一の引数でACIRCLEを呼び出すよう


は、また、他のいくつかの問題があります。関数内のローカル変数として宣言する代わりに、関数に引数を渡す必要はありません。また、main関数では、Get_Radiusまたは関数を呼び出す必要はありません。

+0

私は皆さんのお話をありがとうございます。何らかの理由で.exeファイルが動作しなくなりました。 コードを編集するために編集された質問。 – Cor

1

ACIRCLEを関数として、main()内の変数として定義しました。コンパイラは、Area = ACIRCLE(A)と入力したときに、最も内側のACIRCLE定義(変数)を参照していると考えます。 明らかに、これはコンパイラにとって意味がなく、エラーが出てきます。

0

この場合、Cの基本的なものを学ぶ必要があります。関数

関数は(リターン)あなたは最終的にいくつかの他のもの(引数)でそれを養う何かをあなたに与えることができます操作です。

関数の形がある:

return_typeのname_of_function(引数1、のargument2、...)

あなたがする必要がない場合は、引数なしで供給できます。

円の面積を計算するための関数は、あなただけの唯一のパラメータでACIRCLE関数を呼び出している、しかし、メソッドのシグネチャは2つのパラメータがあり

float circlearea(float radius){ 
    float area = 2 * PI * radius* radius; 
    return area; 
} 
関連する問題