#include <stdio.h>
main() {
/*変数宣言*/
int y;
char g;
/*必要な情報を入力*/
printf("input year of gengou : ");
scanf("%d", &y); //元号表記の年を入力
printf("input please h(heisei) or s(syowa) : ");
scanf("%s", &g); //先の入力が平成か昭和かを選ぶ
printf("%d\n", y);
/*西暦表記の出力*/
switch (g) {
/*大文字か小文字のsが入力されたとき*/
case 's' :
case 'S' :
y += 1924;
printf("%d\n", y);
break;
//[break] : 条件分岐の文から抜け出す
/*大文字か小文字のgが入力されたとき*/
case 'h' :
case 'H' :
y += 1988;
printf("%d\n", y);
break;
/*その他の文字が入力されたとき*/
default:
printf("I said -input please h or s!- Fuck you!!!\n");
}
}
7
g
と入力しても
0
1924
と出力されます。
どうしてscanfでyに7を入れているのにyには0が入っているのでしょうか?
回答お待ちしております。