2016-12-08 13 views
1

The equationCの宿題と少し問題が

こんにちはみんな、私はCで宿題を持っており、それは私にいくつかの問題を与えています。 だから基本的に私は、この特定の式のために私に結果を与えるプログラムを作成する必要があり、ここに私のコードです:私は他の式といくつかの非常によく似たコードを使用している

int main() 
{ 
    int i; 
    int a; 
    printf("a:\t"); 
    scanf("%d",&a); 
    double x,y; 
    double z = 0; 
    for(i=1;i<=9;i++) 
    { 
     if(i==3){continue;} 
     double m=1; 
     for(int n=i;n<=17;n++) 
     { 
      if(n=12){continue;} 
      x=(pow(n,3)-8)/(n-12); 
      m *=x; 
      printf("i = %d'de n = %d iken %f\n", i,n,m); 
     } 
     y=pow(fabs(7-a),i)/pow(i-3,5); 
     z+=y; 
     printf("i = %d ise %f\n", i, y); 
    } 
    printf("W = %f\n", z); 
} 

が、この1は非常に問題がありました。 "a"と入力すると、入力しても何もせずにそこに待っています。

誰かが私のコードに何が間違っているのかを指摘できれば、私はとても幸せです。

+4

これを有するウィル: '場合(N = 12){続ける;}' 12にループ変数 'N'を設定していきます。つまり、 'n'は決して17に達しません。Cで' = 'は代入です。 '=='は比較です。あなたのコードは正当なCですが、警告を有効にすると、コンパイラは 'n = 12'の周りに余分な角括弧を入れて、それが割り当てであることを明確にするよう提案します。 –

+0

シンプルなタイプミスとして閉じる投票。コンパイラの警告を有効にしてください... – Lundin

答えて

3

if(n=12)なければならない

if(n==12) 

は、そうしないと、無限ループ

+1

ありがとうございます!私はいつもそのようなものが欠けている。 – Lithellion