本日の実習課題
2010.4.26

Back to text page


  1. 文字コード出力

    教科書のp.14の例題2.4では文字コードを入力するとその文字を表示するプログ ラムが紹介されていましたが,逆に,文字を入れると文字コードを表示してくれ るプログラムを作成しましょう.

    解答例

  2. 左揃え表現

    printf %10d のように表示桁数を指定すると右揃えで出 力されます.文字列など左揃えで表現したい場合には桁数の部分にマイナ ス記号をつけます.例えば, %-10d のようにすると左揃えにな ります.これを使って下に示すような出力を行なうプログラムを作成して ください.数値は scanf で取り込まなくてもソースの中に入れ ておけばそれで構いません.

    解答例

              English   Physics   Chemistry
    Edward           78       100        85
    Alphonse         90        80        95
    ---------+---------+---------+---------+
    

    文字列を変数に入れることは実はC言語ではできなくて授業の後半で扱う「配列」 や,さらにこの授業の範囲外になりますが,「ポインタ」を使用することになりま す.今の段階ではおまじないだと思って,以下のような型定義と「代入」を行っ ておいてください.

    	char *ed, *al, *en, *ph, *ch, *s;
    
    	ed = "Edward";
    	al = "Alphonse";
    	en = "English";
    	ph = "Physics";
    	ch = "Chemistry";
    	s = "";
    

  3. 特殊文字の出力

    printf で文字列を出力するときに最後に必ず \n を付けて います.これは「改行文字」と言い,これがあると出力を改行します.他 にも, \t のTABや \b のバックスラッシュ(1文字削除), \r のリターン(行の先頭に移動)など,いろいろな種類の物があ ります.そのため,バックスラッシュや書式指定のために使用する %d などはそのままでは画面に出力できません.

    どうすれば出力できるか,というと,記号のバックスラッシュで次に続く文字の 意味を打ち消す作業を行うことになります.言い替えると, \n は本来の文字 n ではなく,違う意味で使用する(newline)ことを バックスラッシュで表現していることになります.そこで,通常は出力さ れない文字の場合,バックスラッシュを使って出力できます.また, % についてはそれだけならば出力できますが, %d のよう に意味のある並びになると,出力できなくなります.どうすれば出力でき るのでしょうか.方法を考えて,以下の例の ように出力するプログラムを作成してください.

    解答例

    \n   newline
    \b   backslash
    "    double quote
    %d   decimal
    %x   hexdecimal
    

  4. 本日の提出練習課題

    授業の後半で,本日の課題の提出練習を行いますので,アナウンスに注意してく ださい.


テキストページに戻る