我编写了这个C++代码,试图模拟自动售货机.无论何时输入用户的选择,每个在switch语句中分配一个大小写的数字1-5,都没有执行:程序无法识别有效输入,并且只打印出默认的case语句.为什么会这样?
#include <iostream>
using namespace std;
int main()
{
int choice;
double dollars;
cout << "==============================================================\n";
cout << "* *\n";
cout << "* VENDING MACHINE SIMULATOR *\n";
cout << "* *\n";
cout << "==============================================================\n";
cout << "Your Choices Are:\n";
cout << "1) Coke - $1.75\n";
cout << "2) Pepsi - $2.25\n";
cout << "3) Sprite - $1.25\n";
cout << "4) 7-up - $1.15\n";
cout << "5) Water - $2.20\n";
// Ask for user's selection.
cout << "What would you like …Run Code Online (Sandbox Code Playgroud) 我应该写一个函数名double_swap,它接受两个双精度作为参数,并交换存储在这些参数中的值.该函数应该不返回任何值,所以我知道这意味着它必须是一个void函数.
例如,如果执行以下代码片段,
int main()
{
double x = 4.8, y = 0.7;
double_swap(x,y);
cout<<"x = "<<x<<" y = "<<y;
}
Run Code Online (Sandbox Code Playgroud)
输出将是:x = 0.7 y = 4.8
我写的程序不是交换价值.如果有人能指出我的错误,我将不胜感激.
#include <iostream>
using namespace std;
void double_swap(double x, double y)
{
x = 1.9;
y = 4.2;
}
int main()
{
double x = 4.2, y = 1.9;
double_swap(x,y);
cout<<"x = "<<x<<" y = "<<y<<endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我编写了这段代码,从用户读取10个整数,将它们存储在一个数组中,然后计算并打印平均值.它还应该打印数组中大于或等于平均值的数字.相反,我的代码打印出数组中的每个数字.我怎样才能解决这个问题?
此外,如果任何人有关于如何简化此代码的任何提示,那么也将非常感激.
#include <iostream>
using namespace std;
int main()
{
const int ENTER_NUM = 10;
int integer[ENTER_NUM];
cout << "Enter "<<ENTER_NUM<<" numbers: "<<endl;
cin >> integer[0];
cin >> integer[1];
cin >> integer[2];
cin >> integer[3];
cin >> integer[4];
cin >> integer[5];
cin >> integer[6];
cin >> integer[7];
cin >> integer[8];
cin >> integer[9];
int sum;
sum = integer[0]+integer[1]+integer[2]+integer[3]+integer[4]+integer[5]+integer[6]+integer[7]+integer[8]+integer[9];
int average;
average = sum/ENTER_NUM;
cout<<"Average is: "<<average<<endl;
for(int i=0; i<10; i++)
{
if (integer[i]>=average);
cout<<"Number in array greater than or equal …Run Code Online (Sandbox Code Playgroud)