前提・実現したいこと
緊急です。
C言語で
生年月日(西暦年、月、日)を⼊⼒して
◦誕生年から 干支(申、酉、戌、亥、子、丑、寅、卯、辰、巳、午、未)
◦誕生月から 誕生石(例:10月オパール)
◦誕生月日から 星座を表示するプログラムを作成したいのですが、
どなたか答えを教えていただきたいです・・・
一応自分でやってもみたのですが、正直めちゃくちゃでここからどうしてよいかわかりません。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
C
1#include<stdio.h> 2int main(void) 3{ 4 char buf[BUFSIZ]; 5int month,year; 6 7char *eto[] = {"子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"}; 8char *jewel[]={"ガーネット","アメジスト","アクアマリン","ダイヤモンド","エメラルド","パール","ルビー","ペリドット","サファイア","オパール","トパーズ","ターコイズ"}; 9char *szs[] = {"山羊座", "水瓶座", "魚座", "牡羊座", "牡牛座", "双子座", "蟹座", "獅子座", "乙女座", "天秤座","蠍座", "射手座"}; 10 11printf("誕生月を入力してください>>"); 12scanf("%d",&month); 13 14while(1){ 15 if(month>=1&&month<=12)printf("あなたの誕生石は>> %s.\n",jewel[month-1]); 16 17 {printf("西暦を入力して下さい --> ");} 18 19else if (fgets(buf, BUFSIZ, stdin) == NULL) { 20break; 21} 22if (sscanf(buf, "%d", &year) == 1 && year > 0) { 23printf("%s どしです\n", eto[(year + 8) % 12]); 24} 25} 26//else printf("Input error.\n"); 27 28return 0; 29}
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/07 06:23
2018/09/07 06:32
2018/09/07 06:39
2018/09/07 06:41
2018/09/07 06:48
2018/09/07 07:07
2018/09/07 07:17
2018/09/07 12:07