- 締切済み
C言語における3重ループの定義についての質問です
多重ループの定義について for文の中にfor文がある場合、多重ループになることはわかったんですが、 3重ループ以上の場合は for文の中にfor文があり、さらにその中にfor文がある時ですか? 例 for( ){ for( ){ for( ){ } } } それとも、for文が重なっている時のfor文の合計数ですか? (例えばfor文の中に別々のfor文が2つある場合) 例 for( ){ for() { } for( ){ } } 上手く説明できないんですが、よろしくお願いします
- suzuki7974
- お礼率0% (0/7)
- C・C++・C#
- 回答数4
- ありがとう数1
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- yama5140
- ベストアンサー率54% (136/250)
>for文の中にfor文がある場合、多重ループになることはわかったんですが、 ?? >for文の中にfor文がある場合、2重ループになることはわかったんですが、★ ですよね。 「2重ループ」が判ったから、それをさらに「重」ねて、 >3重ループ以上の場合は >for文の中にfor文があり、さらにその中にfor文がある時 となるんですよね・・普通に考えて。 >例えばfor文の中に別々のfor文が2つある場合 「別々のfor文」は、★の「for文の中に・・」を満たしてませんよ。
関連するQ&A
- 10進ベーシックでループを抜けたい
for文で作った2重ループの中にif文があります。 if文の条件を満たしたらループを抜けるようにしたいのですが、 「goto 行番号」や「EXIT FOR」 を使ってもうまくいきません。 一度に2重ループを抜けたいのですが、どうすればいいでしょうか?
- ベストアンサー
- Visual Basic
- C言語のプログラムについて
C言語のプログラムについて 3桁の自然数の中で、自分自身を含めた約数が奇数になるものがいくつあるかを求めるプログラムを作りたいのですが、swich文を使って、6通りの方法で出そうとしていまして、 while 文、 for文、 do while文に加え、 for文のを、1つの関数として独立させたもの、 さらに、for文のを重ループ部分のそれぞれのループに対応して、2つの関数として独立させたもの、 そして、この2つの関数のどちらともをループを用いずに再帰呼び出しを用いたもの の6通りで出したいのですが、swich文を使うところは自力でできたのですが、あとの6つそれぞれのプログラムの組み方がわかりません。 教えていただけないでしょうか?ややこしい書き方をしてすいません・・・。
- 締切済み
- C・C++・C#
- 2重定義って??
C言語のプログラミングの勉強をしています。 そこで2重定義というものを知り調べたのですが、良く分かりませんでした。コンパイルの仕組みなども併せて教えてください。お願いいたします。 恐れ入りますが、どなたか初心者にも分かる位のレベルで教えて頂けますでしょうか? 簡単な例があると助かります。 不明点 ・2重定義とは例えば1つの*.hを2つ以上の*.cでインクルードする場合にのみ有効なのか? 自分で調べた結果 2重定義防止用として #ifndef HOGE #define HOGE ~~~~~~~~ #endif 上記のようなことを一般的には行うことは分かったのですが、 これをやったことでどうなるのか??
- ベストアンサー
- C・C++・C#
- C言語プログラム
C言語プログラム ある数を入力して、入力された数を一辺とする図形を描くプログラムを作りたいんです。 分かりやすくすると、 入力された数が5だった時、画面には ***** ***** ***** ***** ***** ↑こう出力させたいんです。 四角だけじゃなくて、 * ** *** **** ***** ↑こういう三角とか、逆三角とか、 * * ** *** *** ***** ** *** * * こんなかんじでいろんな形を描けるようにしたいんです。 C言語で、for文の二重ループを使うようにとのことなんですが、 どうすればいいでしょうか。 こういうのってズルですけど、何かヒントでも貰えればと思っています...。
- ベストアンサー
- その他(プログラミング・開発)
- 2重ループに対する考え方
今回の質問は QNo.3167988 C言語基本 2次元配列(for文:条件値について) の追加質問内容と重複します事をご了承ください。 --------------------------------------------------------------- 【今回の質問】 (1)#include <stdio.h> (2) (3)main() (4){ (5)int x,y; (6)int a[2][4]={ (7){1,2,3,4}, (8){5,6,7,8} (9)}; (10)for(x=0;x<2;x++){ (11)for(y=0;y<4;y++) (12)printf("a[%d][%d]=%d ",x,y,a[x][y]); (13)printf("\n"); (14)} (15)} と上記のような2重ループ(10)(11)に対して以下の考え方で正しいのか迷っている状況のため有識者のご意見を頂きたくて質問させて頂きます。 --------------------------------------------------------------- ■現在の2重ループ理解状況■ 【プロセス1】 ★x = 0 の状態で y=0 (結果:a[0][0] = 1) y=1 (結果:a[1][0] = 2) y=2 (結果:a[2][0] = 3) y=3 (結果:a[3][0] = 4) 以上yへの代入を実行しプロセス2へ --------------------------------------------------------------- 【プロセス2】 ★x = 1 の状態で y=0 ⇒ a[0][1] = 5 y=1 ⇒ a[1][1] = 6 y=2 ⇒ a[2][1] = 7 y=3 ⇒ a[3][1] = 8 以上yへの代入を実行し終了 --------------------------------------------------------------- 【イメージ】 ■■■■■ ■4■■8■y[3] ■■■■■ ■3■■7■y[2] ■■■■■ ■2■■6■y[1] ■■■■■ ■1■■5■y[0] ■■■■■ x[0] x[1] ---------------------------------------------------------------
- ベストアンサー
- C・C++・C#
- objective-cの多重ループbreak
objective-cの多重forループの内側でbreakすると外のforまで抜けるようです。 では、内側のforだけ抜けて外側のforの中に戻るにはどう書けばいいのでしょうか? あと、この件について、c言語とobjective-cの文法の違いについて教えていただけるとうれしいです。
- ベストアンサー
- C・C++・C#
- C言語に詳しい方、お願いします!
二重for文の特長を活かし、次のような表示を行うプログラムを書きなさい。 ※四角形からダイヤ型をくり貫いたような表示。 ただし、キーボード入力で数字を出力し、その数字の数が、横配列の■の最大値となるようにすること(この例の場合、出力した数字は7)。 つまりは、出力した数字に応じて、■とダイヤの大きさが変化する。
- 締切済み
- C・C++・C#
- プログラムの二重のIF文、FOR文について
プログラミングを始めたのですが、 クイックソートなどで出て来る、二重になったIF文とかFor文がイメージできなくて困っています。 エクセルでの何重かのIF文は問題なくこなせるのですが、 なぜかプログラムとなると自分でイメージして作り上げる自信はないです。 プログラマになるには、こういった多重ループを使えるようになるべきなのでしょうか? またそうだとしたら、どのような訓練をしたら分かるようになるでしょうか? それともプログラマに向いてないと諦めたほうがいいのでしょうか?
- ベストアンサー
- その他(プログラミング・開発)