• ベストアンサー

C言語 if文

C言語のif文についての質問なのですが、ifを使い、条件Aの時は1のプログラムを実行、条件Bの時は2のプログラムを実行するようにしたとき、1と2のプログラム自体にもif文が使われています。その場合は、AとBの時のifと1と2に使われているifをどのように区別するのですか?(ちなみに1と2のif文については、それぞれ実行してみたところ動作可能でした。)説明が下手ですいません。初心者ですので、分かりやすく教えていただけると有難いです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

質問の意味がほとんどわかりません。 プログラム1、2が動くなら if (条件A) { プログラム1; }else if (条件B) { プログラム2; }else { 条件AでもBにも当てはまらない場合; } って感じでいいのではないですか? もちろん、プログラム1、2のincludeとかmainとかは取り除いて組み込みます。

rigard1225
質問者

お礼

ご回答ありがとうございます。{}で囲むみたいですね。やってみます。

その他の回答 (1)

  • Gungnir
  • ベストアンサー率17% (110/612)
回答No.2

if( ){        /*1のif文*/  if( ){       /*1の中のif文*/  } } else if( ){        /*2のif文*/  if( ){        /*2の中のif文*/  } } よくわからんがこういうこと? 場合によっては1の中のif文にelseとか付けても良いけど。

rigard1225
質問者

お礼

ご回答ありがとうございます。上記の方法で試してみます。でも学校で作っているプログラムなので月曜まで出来ません;;

関連するQ&A

  • if文について

    最近、C言語プログラムから、離れていて、久しぶりにここを覗いたのですが、 こんな質問を見ました。 質問 C言語初心者だが、学習用に良いサイトはないか? 最初の回答の方は、ある初心者用と思われるサイトを、紹介してらっしゃいました。 それに対して、他の回答者の方々は、そのサイトの一分を引用して、コンパイルできないし、間違っていると指摘されました。それは以下のようなものでした。 if(条件式) 文1; else 文2; その代わりに掲載されているのが次のようなものでした。 if(条件)条件が真のときに実行する1文; else 条件が偽のときに実行する1文; 私には、最初の回答がなぜ間違っているのか、何故コンパイルできないのか、判りません。何方か詳しく教えていただければ、嬉しいです。よろしくお願いします。

  • C言語におけるif文の評価順

    たとえば以下のようなif文で、A B C が評価される順番は 言語の規約上、明確になっているのでしょうか? if ( A && B && C ) { } また例えば A, B, C の順番に評価されるとして、B が FALSE の場合は C を評価する必要はありませんが、 この場合、Cは評価されないことは言語規約上、明確に なっているのでしょうか? 手元のコンパイラで試した結果では 評価順は A -> B -> C で B で FALSE を返すようにしたら C は実行されませんでした。 ただ、これが実装依存か、言語の標準仕様かという点が 気になっています。

  • 【C言語】if文の条件式について

    基本的な質問で申し訳ございません。 C言語のif文にて、以下の条件式がよくわかりません。 if(a & PAD_INPUT_UP){ b = b-4; } 「&」はどのような意味になるのでしょうか??

  • c言語でif文の処理について

    お世話になります。 C言語を勉強中なのですが AとBが一緒でなおかつCとDが一緒ならば というif文を作りたいのですがどのように記載すればいいのでしょうか? よろしくお願いいたします。

  • IF文

    (A)IF 条件 THEN 単純実行文1 ELSE 単純実行文2 (B)IF 条件 THEN 実行処理1 ELSE 実行処理2 Aの文では単純実行分なのになぜ改行すると(B)の文みたいに実行処理になるのでしょうか? 実行処理と単純実行文の違いを教えてください

  • C言語 if文でscanf関数

    C言語のif文でscanf関数を使って、~と入力されたら・・・(~は文字列)のようなプログラムを作りたいです。どうすれば良いでしょうか?(簡単にお願いします・・・)

  • C言語について

    C言語でif文の条件指定の際、a > b && c > dとe > f && g > hのどちらかが成立すれば真という条件を書きたい場合、a > b && c > d || e > f && g > hという文では間違いですよね? どのように表記すればいいでしょうか? 解答よろしくお願いします。

  • if文について教えてください

     C++でプログラムを作っています。  b0~b3どれかが1の時という条件指定と、さらにその上でb0~b3どれも1でなく、かつどれも同じ値でないという条件指定はどのように記述すればよいのですか?  ちなみに私は次の様にしたのですが、ビルドすると「error C2181: else 文が if と一致しません。」となってしまいました。 if((b[0]=1)||(b[1]=1)||(b[2]=1)||(b[3]=1));{ c[1]=c[1]+1; } else(b[0]!=b[1]!=b[2]!=b[3]!=1){   c[2]=c[2]+1;          }  もう一つこちらでもダメでした。 if((b[0]=1)||(b[1]=1)||(b[2]=1)||(b[3]=1));{ c[1]=c[1]+1; } else(b[0]!=b[1]!=b[2]!=b[3]){   c[2]=c[2]+1;          }

  • if文の演算子について

    if文の演算子について int a=0,b=1,c=1,d=1; if(a==1 && b==1 && c==1 ||d==1){ Printf("yes"); }else{ Printf("no"); } if((a==1 && b==1 && c==1 )||d==1){ Printf("yes2"); }else{ Printf("no2"); } } 上記のif文で出力結果が異なります。 if((a==1 && b==1 && c==1 )||d==1)の方はa=1、b=1、c=1の時もしくはd=1の時と 理解できるのですが、 if(a==1 && b==1 && c==1 ||d==1)の方は、どういう条件の時が当てはまるのでしょうか?

  • if文が上手くいかない・・・

     連続投稿失礼します。  if文が上手くいきません。$hensuuの値が間違っているのにもかかわらず、条件があっている時の処理が実行されてしまいます。  なにやら癖になっているようで、if文を書くたびこのような事態が発生します。(PHPに限らず、C言語でまで・・・。)一体何が原因なのでしょうか? <?php $hensuu = "right"; if($hensuu = "wrong"){ print <<<_EOT_ 条件に合ってないはずなのに、こっちが表示されちゃう。 _EOT_; } else { print <<<_DRK_ 本来こっちが表示されるはずなのに、表示されない・・・。 _DRK_; } ?>  よろしくお願いします。

    • ベストアンサー
    • PHP

専門家に質問してみよう