我正在为一个类(C 语言)编写一个程序,这将是一个应用商店的菜单。在程序的某个时刻,用户将没有足够的钱从菜单中购买任何东西,所以他需要向他的帐户添加钱,这是我在下面那部分的函数定义。当我运行我的程序时,它会编译并且一切正常,直到它到达下面的 switch 语句,然后程序崩溃但没有出现运行时错误,它说“它已经停止工作”。我以前从未发生过这种情况,我附上了错误消息的屏幕截图。请帮忙,谢谢。
void moneyChoice(double *depositPtr, double appCost)
{
int choice = 0;
printf("\n\nPlease credit your money by selection:\
\n1 -- $15.00\
\n2 -- $10.00\
\n3 -- $5.00\
\n4 -- $2.00\
\n5 -- $1.00");
printf("\nDeposit amount: ");
scanf("%d", choice);
switch (choice)
{
case 1:
*depositPtr += 15.00;
break;
case 2:
*depositPtr += 10.00;
break;
case 3:
*depositPtr += 5.00;
break;
case 4:
*depositPtr += 2.00;
break;
case 5:
*depositPtr += 1.00;
break;
}
}