わかりません。さて、まずはコードです。
#include <stdio.h>
void load_menu(void);
void sum(void);
void product(void);
void difference(void);
void rest(void);
int main(int argc, char** argv)
{
load_menu();
return 0;
}
void load_menu(void)
{
int choice;
do
{
printf("Menu\n\n");
printf("1. Sum\n");
printf("2. Product\n");
printf("3. Difference\n");
printf("4. Rest\n");
printf("5. Exit(Bad choice)\n");
scanf_s("%d", &choice);
switch (choice)
{
case 1: sum();
break;
case 2: product();
break;
case 3: difference();
break;
case 4: rest();
break;
case 5: printf("Quitting program!\n");
system("PAUSE");
exit(0);
break;
default: printf("Invalid choice!\n");
break;
}
} while (choice != 3);
}
void sum(void)
{
int num1, num2;
int ch;
printf("Enter number 1: ");
scanf_s("%d", &num1);
printf("Enter number 2: ");
scanf_s("%d", &num2);
printf("\nThe sum of the numbers was: %d", num1 + num2);
while ((ch = getchar()) != '\n' && ch != EOF);
printf("\n\nPress ENTER to continue.");
while ((ch = getchar()) != '\n' && ch != EOF)
;
system("cls");
return;
}
void product(void)
{
int num1, num2;
int ch;
printf("Enter a number 1: ");
scanf_s("%d", &num1);
printf("Enter number 2: ");
scanf_s("%d", &num2);
printf("\nThe product of the numbers was: %d", num1 * num2);
while ((ch = getchar()) != '\n' && ch != EOF);
printf("\n\nPress ENTER to continue.");
while ((ch = getchar()) != '\n' && ch != EOF)
;
system("cls");
return;
}
void difference(void)
{
int num1, num2;
int ch;
printf("Enter a number 1: ");
scanf_s("%d", &num1);
printf("Enter a number 2: ");
scanf_s("%d", &num2);
printf("\nThe difference of the numbers was: %d", num1 - num2);
while ((ch = getchar()) != '\n' && ch != EOF);
printf("\n\nPress ENTER to continue.");
while ((ch = getchar()) != '\n' && ch != EOF)
;
system("cls");
return;
}
void rest(void)
{
int ch;
printf("Sleepy sleepy... zZZzZzZz\n");
printf("You now feel awake again!\n");
while ((ch = getchar()) != '\n' && ch != EOF);
printf("\n\nPress ENTER to continue.");
while ((ch = getchar()) != '\n' && ch != EOF)
;
system("cls");
return;
}
しかし、問題は、「差分部分」で、計算が終了した後、Enter キーを押すと終了することです。画面をクリアしてメニューを繰り返す必要がありますが、終了するだけですか??? 他の部分は正常に動作しますが、違いの部分は一体何が問題なのですか? 間違いや提案を見つけることができますか?リターン部分に関係していると思います..システムの一時停止を試みましたが、一時停止するだけで何もしません。終了する必要があります。
では、何が問題だと思いますか?前もって感謝します。