1989年開業 技術士 佐伯英子(情報工学部門) 文部科学省登録番号 第22082号 日本技術士会会員 東大阪商工会議所会員

≫サンプルプログラム一覧 

オープンソース/C言語サンプルプログラム 矢印キーで鳥の向きを変える

●矢印キーでアスキーアートの鳥の向きを変えるプログラムです。
●Escキーを押すと終了します。
 ≫ソースファイルのダウンロード: tori11.c

【問題】
●←キー,→キー,Escキー以外が押されたら、Beep音が鳴るように
 変更してみよう。

// 矢印キーで鳥の向きを変える
#include <stdio.h>
#include <conio.h>
#include <windows.h>
void  main( )
{
  char  muki='L';                               // 鳥の向き(L=左,R=右)
  int   kn;                                     // 押されたキーの番号

    while ( 1 )                                 // 無限ループ
      {
        system("cls");                          // 画面消去
        if ( muki=='L' )
          {
            printf("                     \n");
            printf(" ***                 \n");
            printf("    *                \n");
            printf("     *********       \n");
            printf("      ******         \n");
            printf("       *  *          \n");
            printf("      *    *         \n");
            printf("_y_y_y*y_y_y*y_y_y_y_\n");
          }
        else
         {
            printf("                     \n");
            printf("              ***    \n");
            printf("             *       \n");
            printf("    *********        \n");
            printf("      ******         \n");
            printf("       *  *          \n");
            printf("      *    *         \n");
            printf("_y_y_y*y_y_y*y_y_y_y_\n");
         }

        printf("\n");
        printf("←キーで左向き,→キーで右向き,Escキーで終了\n");

        kn=getch( );                            // キーが押されるのを待つ
        if ( kn==27 ) break;                    // Escキーが押されたら終わり
        if ( kn!= 0 ) continue;                 // 特殊キーでない

        kn=getch( );                            // 特殊キーの番号を得る
        if ( kn==77 ) muki='R';                 // →キーが押されたら右向き
        if ( kn==75 ) muki='L';                 // ←キーが押されたら左向き
      }
}
   

※SSL暗号化通信対応

佐伯英子技術士事務所 〒542-0073 大阪市中央区日本橋 1-14-13 サンオフィス日本橋601  E-mail: info@saeki-pe.com