[復習] 前回、再帰呼び出しを利用した、繰り返し 繰り返しのパターン k 回、繰り返したい場合 長さ k の文字列 n を引数として指定して、再帰呼び出しをする 1. 関数の名前決める 2. 次のひな型を作る void 関数名 ( char *n ) { if ( !strcmp ( n, "" ) ) { /* なにもしない */ } else { /* 繰り返したい命令 : 再帰とは無関係でよい */ /* 「ここ」*/ /* 再帰 */ 関数名 ( n + 1 ); } } 3. 繰り返したい命令を「ここ」のところに挿入 4. 繰り返しを実行する場合 関数名 ( 繰り返す回数の長さ文字列 ); [今日の目標] 「繰り返し」に慣れる 命令が「文字列のプリント」だけではつまらないので、 絵を描く事を考える 文字 C 言語では、「文字」を、表すためには、 「'」 + その文字を表す文字(一字) + 「'」 例 : 「'A'」は、「A」という文字を表す C 言語の表現 特殊な例として '\' で始まる二文字で一文字を表す場合もある 例 : '\n' => 改行一文字 '\0' => NUL 文字(空文字) が実は、文字列の最後にある '\\' => 「\」という文字を表す # Windows では「\(円マーク)」 # Ubuntu では「\(バックスラッシュ)」になる cf. 「"A"」は、「A」という文字を一つ含む文字列 文字を出力するときには、 putchar 関数を利用する 例 : 「A」という文字を出力する場合は、 putchar ( 'A' ); とする。 文字を入力するときには、 getchar() 関数が利用できる getchar() を呼び出すと、キーボードから、一文字 読み込み、その一文字が、「関数の値」となる 例 : キーボードから、一文字入力し、それを画面に出すには、 putchar ( getchar() ); とする。 putchar の引数は、「文字」でなければならないが、 getchar が返す値が「文字」なので、うまくゆく # 入力は、[Enter] キーが押されるまで、待つ仕組みになっている # 待つ事を目的として getcharを使う