プログラミングのペーパーテスト
実行結果がどのように表示されるか答えよ
#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ランキング
-
VB6における事前バインディング...
-
【正規表現】【javascript】CR...
-
awk内でsystem関数を使用しfunc...
-
Boolean型配列中のTrueの有無を...
-
VC++のちらつき防止方法
-
関数を呼び出すHTMLタグ<body o...
-
ボタンをクリックすると数が増...
-
引数付きコンストラクタでコン...
-
エクセルでブラウザへのフォー...
-
ASP+アクセスでのSQLコメントに...
-
サブウインドウから親ウインド...
-
class指定したHTML要素の背景色...
-
Vb.netのグローバル変数の宣言...
-
複数ファイルで使うグローバル...
-
window.openでタイトル名の指定
-
javascript 特定のタグのidの存...
-
二次元配列を使って順位をだす...
-
今日の月と日付の1週間後や3日...
-
idを使わずにonclickで自身の要...
-
ページ内に複数表がある場合のT...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Boolean型配列中のTrueの有無を...
-
【正規表現】【javascript】CR...
-
ASP+アクセスでのSQLコメントに...
-
Linux バイナリ実行できない "...
-
Vb.netのグローバル変数の宣言...
-
ボタンをクリックすると数が増...
-
【Jquery】changeイベント毎にa...
-
正規表現で半角数字1桁のみを全...
-
HTTPSのとき":"が"%3A"ではなく...
-
「オブジェクトが必要です。」...
-
onclick指定関数の引数へローカ...
-
同じ型【ハイフンと数字】だけ...
-
Excel VBA の ChangeFileAccess
-
C# .NET DataGridView の行を追...
-
javascriptで文字挿入でtoggle...
-
ifreamをリロードしたい
-
window.onloadでのfunction
-
static constメンバ変数(配列)...
-
MFCのキャプション変更
-
VB6における事前バインディング...
おすすめ情報