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

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

オープンソース/C言語サンプルプログラム 十二支を答える

●生まれた年を入力して、その年の十二支を画面に表示する
 プログラムです。
     ≫ソースファイルのダウンロード: jyuunisi01.c
【問題】
●ESCキーを押すまで繰り返し入力・表示出来るよう、改造して
 みよう。
●数字以外の文字が入力されたら、入力エラーとして処理する
 ように改造してみよう
//十二支を答える
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

void  main( )
{
    char   buf[128],eto[32];    // 文字型配列
    int    yy;                  // 年

    printf("\nあなたは西暦何生まれですか? ");
    fflush(stdin);
    gets(buf);                 // 文字列を入力し配列bufに格納
    yy=atoi(buf);              // 整数値に変換

    switch ( yy%12 )           // 年を12で割った余り
      {
        case  0: strcpy(eto,"申(さる)"); break;
        case  1: strcpy(eto,"酉(とり)"); break;
        case  2: strcpy(eto,"戌(いぬ)"); break;
        case  3: strcpy(eto,"亥(い)"); break;
        case  4: strcpy(eto,"子(ね)"); break;
        case  5: strcpy(eto,"丑(うし)"); break;
        case  6: strcpy(eto,"寅(とら)"); break;
        case  7: strcpy(eto,"卯(う)"); break;
        case  8: strcpy(eto,"辰(たつ)"); break;
        case  9: strcpy(eto,"巳(み)"); break;
        case 10: strcpy(eto,"午(うま)"); break;
        case 11: strcpy(eto,"未(ひつじ)"); break;
      }

    printf("\n%s年生まれのあなたの十二支は、%sですね\n",buf,eto);
}
   

※SSL暗号化通信対応

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