程序生成但不显示任何内容

Program builds but displays nothing

本文关键字:任何内 显示 程序生成      更新时间:2023-10-16

我正在做作业。我遇到的问题是,每次我试图运行我的程序,看看它显示什么,没有显示在命令提示符上。但是,如果我按下任何键然后进入,程序就会开始不受控制地循环。程序甚至不显示初始计数消息,只是一个闪烁的"_"。由于

#include <cmath>
#include <cstdlib>
#include <iostream>
using namespace std;
void PizzaMenu();
void SizePrices();
int main()
{
   double personal = 10.00;
   double medium = 14.50;
   double large = 19.00;
   double xlarge = 23.50;
   double FlavorChoice=0;
   int SizeChoice;
   int PizzaCountP=(cin >> PizzaCountP, PizzaCountP);
   int PizzaCountM = (cin >> PizzaCountM, PizzaCountM);
   int PizzaCountL = (cin >> PizzaCountL, PizzaCountL);
   int PizzaCountXL = (cin >> PizzaCountXL, PizzaCountXL);
   double orderTotal = (personal * PizzaCountP) + (medium * PizzaCountM) + (large * PizzaCountL) + (xlarge * PizzaCountXL);


   cout << "Welcome to Joes pizza place!" << endl;

   do{  
         PizzaMenu();
         cout << "nPlease chose a pizza from the menu(1-6): ";
         cin >> FlavorChoice;
         SizePrices();
         cin >> SizeChoice;
         if (SizeChoice > 0 && SizeChoice < 5)
         {
            switch (SizeChoice)
            {
            case 1:
            cout << "How many personal pizzas? "; cin >> PizzaCountP; 
            break;
            case 2:
            cout << "How many medium pizzas?"; cin >> PizzaCountM; 
            break;
            case 3:
            cout << "How many large pizzas?"; cin >> PizzaCountL; 
            break;
            case 4: cout << "How many extra large pizzas?"; cin >> PizzaCountXL; 
            break;
            default: cout << "please enter a choice (1-4)"; cin >> SizeChoice; 
            break;
            }
         }
         if (PizzaCountP > 0 || PizzaCountM > 0 || PizzaCountXL > 0 || PizzaCountL > 0)
         {
            printf("Your total is: %a", orderTotal);
         }
    } while (FlavorChoice != 6);
    cout << "Thank you for visiting Joes place pizza! "<<endl;
}

void PizzaMenu()
{
    cout << "nSpecialty Pizza Menu" << endl;
    cout << "n1)Pizza 1" << endl << "n2)Pizza 2" << endl << "n3)Pizza 3" <<endl << "n4)Pizza 4" << endl << "n5)Pizza 5" << endl << "n6)Pizza 6" << endl;
}
void SizePrices()
{
    cout << "1) 10'' Personal" << "t" << "- $10.00" << endl;
    cout << "2) 14'' Medium" << "t" << "- $14.50" << endl;
    cout << "3) 16'' Large" << "t" << "- $19.00" << endl;
    cout << "4) 18'' Extra Large" << "t" << "- $23.50" << endl;
    cout << "Your choice (1-4)? ";
 }

程序中有一些逻辑错误。现在,它应该可以正常工作…

#include <cmath>
#include <cstdlib>
#include <iostream>
using namespace std;
void PizzaMenu()
{
    cout << "Specialty Pizza Menu:" << endl;
    cout << "1) Pizza 1" << endl << "2) Pizza 2" << endl << "3) Pizza 3" << endl << "4) Pizza 4" << endl << "5) Pizza 5" << endl << "6) Exit" << endl;
}
void SizePrices()
{
    cout << "Size Prices:" << endl;
    cout << "1) 10'' Personal" << "t" << "- $10.00" << endl;
    cout << "2) 14'' Medium" << "t" << "- $14.50" << endl;
    cout << "3) 16'' Large" << "t" << "- $19.00" << endl;
    cout << "4) 18'' Extra Large" << "t" << "- $23.50" << endl;
    cout << "Your choice (1-4)? ";
}
int main()
{
    double personal = 10.00;
    double medium = 14.50;
    double large = 19.00;
    double xlarge = 23.50;
    int FlavorChoice = 0;
    int SizeChoice = 0;
    int PizzaCountP = 0;
    int PizzaCountM = 0;
    int PizzaCountL = 0;
    int PizzaCountXL = 0;
    double orderTotal = 0.0;
    cout << "Welcome to Joes pizza place!" << endl;
    cout << "Please choose from the main menu(1-6): " << endl;
    PizzaMenu();
    cin >> FlavorChoice;
    while(FlavorChoice != 6) {      
        SizePrices();
        cin >> SizeChoice;
        if (SizeChoice > 0 && SizeChoice < 5)
        {
            switch (SizeChoice)
            {
            case 1:
                cout << "How many personal pizzas? ";
                cin >> PizzaCountP;
                orderTotal += personal * PizzaCountP;
                break;
            case 2:
                cout << "How many medium pizzas?";
                cin >> PizzaCountM;
                orderTotal += medium * PizzaCountM;
                break;
            case 3:
                cout << "How many large pizzas?";
                cin >> PizzaCountL;
                orderTotal += large * PizzaCountL;
                break;
            case 4: cout << "How many extra large pizzas?";
                cin >> PizzaCountXL;
                orderTotal += xlarge * PizzaCountXL;
                break;
            default: cout << "please enter a choice (1-4)";
                cin >> SizeChoice;
                break;
            }
        }
        // orderTotal = (personal * PizzaCountP) + (medium * PizzaCountM) + (large * PizzaCountL) + (xlarge * PizzaCountXL);
        if (PizzaCountP > 0 || PizzaCountM > 0 || PizzaCountXL > 0 || PizzaCountL > 0)
        {
            // printf("Your total is: %a", orderTotal);
            cout << "Your total is: $" << orderTotal << endl;
        }
        cout << "Please choose from the main menu(1-6): " << endl;
        PizzaMenu();
        cin >> FlavorChoice;
    }
    cout << "Thank you for visiting Joes place pizza! " << endl;
    // system("pause");
    return 0;
}