如何在用户输入字符并按下回车键后关闭程序?

时间:2013-09-19 05:59:55

标签: c++

我刚开始学习C ++编程。我的程序运行完美但我还需要它在用户输入一个字符并按下回车键时关闭。我不知道应该怎么做。任何帮助将非常感激。到目前为止我的代码是(运行正常):

#include <iostream>
using namespace std;

int main()
{
    int money_spent, money_tendered;

    cout << "Enter the total amount spent: \n";
    cin >> money_spent;

    cout << "Enter the amount tendered: \n";
    cin >> money_tendered;

    int balance = money_tendered - money_spent;
    int ten_bills = balance / 1000;
    balance = balance % 1000;
    int five_bills = balance / 500;
    balance = balance % 500;
    int dollar_coins = balance / 100;
    balance = balance % 100;
    int quater_coins = balance / 25;
    balance = balance % 25;
    int dimes = balance / 10;
    balance = balance % 10;
    int nickels = balance / 5;
    balance = balance % 5;
    int pennies = balance;

    cout << " \n \n"
        << "Your change is: \n"
        << ten_bills << " tenn dollar bill(s). \n"
        << five_bills << " five dollar bill(s). \n"
        << dollar_coins << " one dollar coin(s). \n"
        << quater_coins << " quater(s). \n"
        << dimes << " dime(s). \n"
        << nickels << " nickel(s). \n"
        << pennies << " pennie(s). \n";

    return 0;
}

4 个答案:

答案 0 :(得分:4)

添加

cin.ignore();    
cin.get();

之前

return 0;

您需要cin.ignore(),忽略输入money_tendered后输入的ENTER。否则,此{ENTER}将被cin.get()捕获,而不是您要输入的最后一个字符。

答案 1 :(得分:0)

使用

getchar();

这是一个标准的c函数。

答案 2 :(得分:0)

您需要更改您的cin以读取字符串。然后你需要检查该字符串是否是“s”。如果是这样,你想返回0.否则你想将字符串转换为整数并将其存储在money_spent或money_tendered中。然后,您希望将整个过程包装在while(1){}循环中,以便它不会自动退出。

答案 3 :(得分:0)

在程序结束时添加以下行。

<强>系统(&#34;暂停&#34);

一个应用程序来到这一行,它会告诉你

按任意键继续。 。 。消息。单击按钮后,应用程序将自动退出该过程。