回答(1件)

6

簡単だったよ! 見るからにwin 8 か win 8.1だったので、windows10でビルド、実行しました。 Microsoft Windows [Version 10.0.19041.388] Visual Studio 2019ビルド確認 なお、IntelliSenseにより、一部(C4996)のプリコンパイルエラーを無効にした#pragma命令が含まれています。 (scanf_sでもよかったんですけど、char型以外の最大数の指定のやり方がわからなくて...) ````````````````````````````` #include <stdio.h> #include <stdlib.h> #pragma warning(disable: 4996) int main(void) { likeMonth(); printf("\n\n"); inputTime(); printf("\n\n"); howMach(); } int likeMonth() { printf("好きなのは何月?:"); int input; scanf("%d", &input); if (input < 1 || input > 12) { printf("エラー。入力された値が不正です。\n"); likeMonth(); } input %= ((input * 2 + 100) * 20 - 400) / 40; input %= 40; printf("その月の倍に100足して20掛けて400引き40で割って\nその商をまた40で割ると余りは%d !戻った?\n", input); system("pause"); } int inputTime() { printf("時刻は XX:XX と入力してください。\n家を出る時刻は?"); int time[10]; if (scanf("%d:%d", &time[0], &time[1]) == EOF) { errHandle(1); } printf("学校につく時刻は?"); if (scanf("%d:%d", &time[2], &time[3]) == EOF) { errHandle(1); } if (time[0] < 0 || time[0] > 23 || time[1] < 0 || time[1] > 59 || time[2] < 0 || time[2] > 23 || time[3] < 0 || time[3] > 59) { errHandle(1); } time[1] += time[0] * 60; time[3] += time[2] * 60; time[4] = time[3] - time[1]; time[5] = time[4] % 60; time[6] = time[4] / 60; printf("通学時間は%d時間%d分ですね\n", time[6], time[5]); system("pause"); } int howMach() { printf("ビンの中に100玉はいくつ?>"); int money[3]; scanf("%ld", &money[0]); if (money[0] < 0 || money[0] > 250000) { errHandle(2); } money[2] = money[0]; money[0] = money[0] * 100; money[0] = 250000 - money[0]; money[1] = money[0] % 10000; money[0] = money[0] / 10000; printf("「免許をとる!貯金目標25万円」\nあと % 3d万 % 3d円\n", money[0], money[1]); double rate = 4 * ((double)money[2] / 100); printf(" 達成率は%.1lf%%\n", rate); system("pause"); } int errHandle(int witchFunc) { printf("エラー。入力された値が不正です。\n"); switch (witchFunc) { case 0: likeMonth(); break; case 1: inputTime(); break; case 2: howMach(); break; } } ````````````````````````````` 開発意図と異なる場合は申し訳ありません。(printfの空白が全角、半角の区別・"% 3d"ではなく、"%d "だったとか) できれば、大学生だとか何歳だとか、いまどこまで習得したとか、学校で習っているだとかを教えてもらえると幸いです。 僕は今中学生で、一年前に独学で始めました。もう、コマンドプロンプトと同等のものを作ったりしています。Win32APIとかいう便利すぎるものがあるのはいいですね!!僕の考え方では、「PCが自分だとして、一番簡単にシンプルに疲れずにやる方法は?」と考えるのが一番でした。メモリやCPUの気持ちになってみましょう。できるはずです!頑張ってください!

画像

6人がナイス!しています