
#include <iostream>
using namespace std;
int main()
{
int s = 1;
for(int i=0; i<5; i++){
for(int k=0; k<s; k++){
cout << '*';
}
cout << '\n';
s++;
}
return 0;
}
をコンパイラすると、
*
**
***
****
*****
の様に出力されます。
この二つの**マークの所から、なぜ、そうなるのかが理解できません。
for(int k=0; k<s; k++){
の k<s;の所は最初、0<1;となって。*が一つ出力され、k++でkが1になり'\n'で改行され、
s++でsが2になり、1<2;となり出力の2行目に*が一つでます。でも1<2なので、\nになってしまいます。
しかし、この考え方は間違っているので、理解できないのです。
要点は**がどの様な手順で出力されているのかが解りません。
**が理解できれば***や、****も理解できると思います。
for(int k=0; k<s; k++){
cout << '*';
}
のk++のインクリメントは{ }のブロック内の最後の地点で、1プラスになるのですよね?
No.2ベストアンサー
- 回答日時:
こんにちは。
1番目のforループで5回ループするのはOKですよね。
2番目のforループでは毎回k=0の初期化が実行されるので、2回目のループの時にはk<2が真の間(成り立つ間)cout<<'*'が実行されて'*'が2つ出力されますます。
3回目も同様に、k<3が真の間繰り返されるので、'*'が3つ出力されます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DLLファイルの逆コンパイラにつ...
-
プログラマー達は何故、プログ...
-
C言語の関数のextern宣言
-
卒業研究でよく分からないとこ...
-
C言語 関数、変数の宣言について
-
C言語について(初心者)
-
C言語のことです。写真(見にく...
-
Windows Formアプリからコンソ...
-
DNCL(共テ用プログラミング言語...
-
C言語について。
-
visual studio 2022でのC#プロ...
-
あってる
-
DNCL(共テ用プログラミング言語...
-
C# で 数式文字列処理を処理す...
-
gccを行ってもexeファイルが生...
-
c言語
-
C言語 列挙型(enum型)変数について
-
C++でデスクトップGUIアプリ開...
-
c言語でイベントフラグを使った...
-
必ずyou bet と表示されます
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
c言語
-
DLLファイルの逆コンパイラにつ...
-
Windows Formアプリからコンソ...
-
大量のデータを読み込んで表示...
-
C言語の関数のextern宣言
-
VisualStudioでC++クラスを追加...
-
【C言語】全角文字の配列を、全...
-
VisualStudio2022でC言語プログ...
-
C++でデスクトップGUIアプリ開...
-
gccを行ってもexeファイルが生...
-
C#でTreeViewのCheckBoxのサイ...
-
C#でログファイルにファイルパ...
-
プログラマー達は何故、プログ...
-
逆コンパイルと逆アセンブルの...
-
Notepad++の関数リスト表示の変...
-
C言語について。
-
Cのコンパイルでコメントアウト...
-
visual studio 2022でのC#プロ...
-
コンソールアプリを作成するの...
-
C言語 バッファについて。
おすすめ情報