我是 C++ 新手,我的作业需要帮助。这是我必须做的
开发一个流程图,然后编写一个菜单驱动的 C++ 程序,该程序使用多个用户定义的函数、重载函数和引用。
程序执行后,屏幕将被清除,下面显示的菜单将出现在屏幕顶部并居中。菜单项说明如下。
帮助最小的最大的退出
H 或 h (用于 Help )选项将调用名为 help() 的函数,该函数将显示帮助屏幕。帮助屏幕应指导用户如何与程序交互、要输入的数据类型以及程序会产生什么结果。在用户敲击任何键之前,每个帮助屏幕都应保留在显示器上。一旦用户的输入被处理,屏幕将被清空并再次显示菜单。S 或 s(代表 Smallest )选项将调用名为 minimum( ) 的函数,该函数将提示用户输入两个浮点数并调用函数 findSmallest() ,该函数将计算并返回集合中的最小数。一旦找到最小的数字,函数 display() 将被调用(从 minimum() 函数)并使用如下所示的格式显示输入的数字和最小的数字。n1 = xxx.xx,n2 = yy。yy 和最小的是 zzz.zz,其中 n1 是第一个数字,n2 是第二个数字。x、y 和 z 是实际数字的占位符。请注意,小数点后需要两位有效数字。
要使用的函数原型是:
void smallest(void);
float findSmallest(float f, float s);
void display(float& f, float& s, float& small);
其中 f 指的是第一个数字,s 指的是第二个数字。结果应留在屏幕上,屏幕右下角会出现以下提示: Strike any key to continue... 一旦用户输入一个键,屏幕将被清除并再次显示菜单. L 或 l(代表 Largest )选项将调用名为 largst( ) 的函数,该函数将提示用户输入两个双精度数并调用函数 findLargestt() ,该函数将计算并返回集合中的最大数。一旦找到最大数字,函数 display() 将被调用(从最大()函数)并使用如下所示的格式显示输入的数字和最小的数字。n1 = xxx.xxxx,n2 = yy.yyyy,最大的是 zzz.zzzz,其中 n1 是第一个数字,n2 是第二个数字。x, y, 和 z 是实际数字的占位符。请注意,小数点后需要四位有效数字。
要使用的函数原型是:
void largest(void);
double findLargest(double f, double s);
void display(double& f, double& s, double& large);
其中 f 指的是第一个数字,s 指的是第二个数字。结果应留在屏幕上,屏幕右下角会出现以下提示: Strike any key to continue... 一旦用户输入一个键,屏幕将被清除并再次显示菜单. 注意: display() 是一个重载函数。Q 或 q(表示退出)选项将清除屏幕并将控件返回到 Visual Studio IDE。
这是我到目前为止所拥有的,我不断收到错误 LNK2019 和 LNK1120
#include <iostream>
#include <iomanip>
#include <cstdlib>
using namespace std;
extern char menu(void);
void smallest(void);
float findsmallest(float f, float s);
void display (float f, float s, float& small);
void largest(void);
double findlargest(double f, double s);
void display (double f, double s, double& large);
int main(void)
{
float n1, n2;
char op;
while(1)
{
op = menu();
switch(op)
{
case 'h' :
case 'H' :
cout << "\t How to Operate Program\n"
<< "Select any of the menu items\n"
<< "h or H for Help\n"
<< "s or S for Smallest\n"
<< "Option will find the smallest number of two numbers\n"
<< "l or L for Largest\n"
<< "Option will find the largest number of two numbers\n"
<< "q or Q will terminate program\n";
case 's' :
case 'S' :
cout << "\n\nPlease input values for n1 and n2,";
cin >> n1 >> n2;
findsmallest (n1, n2);
break;
case 'l' :
case 'L' :
cout << "\n\nPlease input values for n1 and n2,";
cin >> n1 >> n2;
findlargest (n1, n2);
break;
}
}
return EXIT_SUCCESS;
}
extern char menu(void)
{
char menuOption;
int flag = 1;
while(flag == 1)
{
cout << "\th. Help\t\ts. Smallest\t\tl. Largest\t\tq. Quit\n\n\t\t\tmake"
<< " your selection ==> ";
cin >> menuOption;
switch(menuOption)
{
case 'h' :
case 'H' :
case 's' :
case 'S' :
case 'l' :
case 'L' :
flag = 0;
break;
case 'q':
case 'Q':
cout << "\nFinished..." << endl;
exit(0);
default :
cout << "\n\twrong choice, try again\n\n";
}
}
return menuOption;
}