プログラミングのペーパーテスト
実行結果がどのように表示されるか答えよ
#include <stdio.h>
void hoge(int n){
if( n <= 0 ){
printf("0 ");
} else {
printf("%d ",n);
hoge(n-1);
printf("%d ",n);
}
}
void main(){
hoge(3);
}
答え 3210123
3210までは分かるんですけどなんで123が表示されるか
分かりません
教えてほしいです
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
行番号追加して、
01:#include <stdio.h>
02:void hoge(int n){
03: if( n <= 0 ){
04: printf("0 ");
05: } else {
06: printf("%d ",n);
07: hoge(n-1);
08: printf("%d ",n);
09: }
10:}
11:void main(){
12: hoge(3);
13:}
実行される処理は、
11 12 hoge(3)を呼び出し
02 03 05 06 3を表示
07 hoge(2)を呼び出し、以下を一旦省略
08 3を表示
で3が2個表示されるのはOK?
その上で、省略された部分を書くと、
11 12 hoge(3)を呼び出し
02 03 05 06 3を表示
07 hoge(2)を呼び出し
02 03 05 06 2を表示
07 hoge(1)を呼び出し
02 03 05 06 1を表示
07 hoge(0)を呼び出し
02 03 04 0を表示
08 1を表示
08 2を表示
08 3を表示
> なんで123が表示されるか
06行目が実行された後、08行目も実行されるから。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# プログラミングのペーパーテスト 実行結果を表示せよ #include <stdio.h> int h 1 2022/07/09 15:27
- C言語・C++・C# プログラミング実行後に表示される値を答えよ #include <stdio.h> void main 4 2022/05/28 10:20
- C言語・C++・C# プログラミングの授業のペーパーテスト 実行結果を答えろ #include int x[ ] = {1 3 2022/06/16 20:08
- C言語・C++・C# プログラミングのペーパーテスト 実行結果の表示を答えてください #include <stdio.h> 2 2022/07/09 16:14
- C言語・C++・C# プログラミング実行後の表示される値を答えよ #include<stdio.h> void main( 7 2022/05/20 00:07
- C言語・C++・C# プログラミングペーパーテスト 次の問題の実行結果を答えろ #include int x[ ] = { 1 2022/06/16 21:49
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# C言語: ポインタ 5 2022/06/01 08:33
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Boolean型配列中のTrueの有無を...
-
HTTPSのとき":"が"%3A"ではなく...
-
「オブジェクトが必要です。」...
-
awk内でsystem関数を使用しfunc...
-
ボタンをクリックすると数が増...
-
C# .NET DataGridView の行を追...
-
onclick指定関数の引数へローカ...
-
Excel VBA の ChangeFileAccess
-
ifreamをリロードしたい
-
正規表現で半角数字1桁のみを全...
-
Vb.netのグローバル変数の宣言...
-
JavaScript window.openで開く...
-
スマフォではボタンを表示させ...
-
C#テキストボックスの文字を配...
-
ActiveXobjectが作成できない
-
javascriptで、表示されている...
-
関数でy=g(x)のgとは何の略です...
-
なぜmatchメソッドがエラーにな...
-
同じIDで定義した要素の配列を...
-
gas スプレッドシートがアクテ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【正規表現】【javascript】CR...
-
Linux バイナリ実行できない "...
-
ASP+アクセスでのSQLコメントに...
-
Boolean型配列中のTrueの有無を...
-
Excel VBA の ChangeFileAccess
-
【Jquery】changeイベント毎にa...
-
Vb.netのグローバル変数の宣言...
-
static constメンバ変数(配列)...
-
同じ型【ハイフンと数字】だけ...
-
class指定したHTML要素の背景色...
-
onclick指定関数の引数へローカ...
-
ボタンをクリックすると数が増...
-
HTTPSのとき":"が"%3A"ではなく...
-
「オブジェクトが必要です。」...
-
MFCのキャプション変更
-
ページ離脱時のalertボタンで処...
-
アンカーリンクをクリックさせ...
-
VC++のちらつき防止方法
-
C# .NET DataGridView の行を追...
-
2次元のJSON形式の配列の展開
おすすめ情報