我不明白什么叫重载就不需要选择语句了,第一个比大小,第二个排序,第三个计算面积
那如果eg:我在第三个语句只想直接输出长方形而不用正方形该怎么做
#include<iostream>
using namespace std;
class MinSort {
public:
MinSort(int x, int y,int p,int q);
MinSort(int a, int b,int c);
MinSort(int m, int n);
private:
int min;
int temp=0;
};
int main()
{
int x, y, p, q;
cout << "请选择需要输入数字的个数(小于等于4大于等于2)" << endl;
int a;
cin >> a;
cout << "请输入需要比较的数字" << endl;
if (a == 2) {
cin >> x >> y;
MinSort(x, y);
}
else if (a == 3) {
cin >> x >> y >> p;
MinSort(x, y,p);
}
else if (a == 4) {
cin >> x >> y >> p>>q;
MinSort(x, y, p,q);
}
return 0;
}
MinSort::MinSort(int m, int n) {
if (m > n)
min = n;
else
min = m;
cout << "最小值为" << min << endl;
}
MinSort::MinSort(int m, int n,int p) {
if (m > n)
min = n;
else
min = m;
if (min > p)
min = p;
else
min = min;
cout << "最小值为" << min << endl;
}
MinSort::MinSort(int m, int n, int p, int q) {
if (m > n)
min = n;
else
min = m;
if (min > p)
min = p;
else
min = min;
if (min > q)
min = q;
else
min = min;
cout << "最小值为" << min << endl;
}
#include<iostream>
using namespace std;
int Sort(int num[10]);
float Sort(float num[10]);
int main()
{
int num1[11],x;
float num2[11],y;
int i;
cout << "请选择需要输入数字的类型" << endl;
cout << "整数输入1 实数输入2" << endl;
int a;
cin >> a;
cout << "请输入需要排序的数字" << endl;
if (a == 1) {
for (i = 0; i <10; i++)
{
cin >> x;
num1[i] = x;
}
Sort(num1);
}
else if (a == 2) {
for (i = 0; i <10; i++)
{
cin >> y;
num2[i] = y;
}
Sort(num1);
}
return 0;
}
int Sort(int num[10])
{
int i, j, temp;
for (i = 0; i < 10; i++) {
for (j = i;j < 10; j++)
{
if (num[j] > num[j + 1])
{
temp = num[j];
num[j] = num[j + 1];
num[j + 1] = temp;
}
}
}
for (i = 0, i < 10; i++;)
cout << num[i]<<" ";
return 0;
}
float Sort(float num[10])
{
int i, j;
float temp;
for (i = 0; i < 10; i++) {
for (j = i; j < 10; j++)
{
if (num[j] > num[j + 1])
{
temp = num[j];
num[j] = num[j + 1];
num[j + 1] = temp;
}
}
}
for (i = 0, i < 10; i++;)
cout << num[i] << " ";
return 0;
}
#include<iostream>
using namespace std;
int Sort(int *num1);
float Sort(float *num2);
int _tmain(int argc, _TCHAR* argv[])
{ int num1[11],x;
float num2[11],y;
int i;
cout << "请选择需要输入数字的类型" << endl;
cout << "整数输入1 实数输入2" << endl;
int a;
cin >> a;
cout << "请输入需要排序的数字" << endl;
if (a == 1) {
for (i = 0; i <10; i++)
{
cin >> x;
num1[i] = x;
}
Sort(num1);
}
else if (a == 2) {
for (i = 0; i <10; i++)
{
cin >> y;
num2[i] = y;
}
Sort(num2);
}
return 0;
}
int Sort(int *num1)
{
int i, j, temp;
for (i = 0; i <10; i++) {
for (j = 0; j < 9; j++)
{
if (num1[j] > num1[j + 1])
{
temp = num1[j];
num1[j] = num1[j + 1];
num1[j + 1] = temp;
}
}
}
for (i = 0;i <10; i++)
cout << num1[i]<<" ";
return 0;
}
float Sort(float *num2)
{
int i, j;
float temp;
for (i = 0; i < 10; i++) {
for (j = 0; j < 9; j++)
{
if (num2[j] > num2[j + 1])
{
temp = num2[j];
num2[j] = num2[j + 1];
num2[j + 1] = temp;
}
}
}
for (i = 0; i < 10; i++)
cout << num2[i]<<" ";
return 0;
}
# include <iostream>
using namespace std;
# include <iomanip>
# include <math.h>
void area(double a)
{
double area = a * a;
cout << "正方形面积为:" << endl;
cout <<area << endl;
}
void area(double a, double b)
{
double area = a * b;
cout << "长方形面积为:" << endl;
cout << area << endl;
}
int main()
{
double a, b,c;
cout << "计算正方形面积(输入边长)" << endl;
cin >> a;
area(a);
cout << "计算长方形面积(输入长和宽)" << endl;
cin >> b >> c;
area(b, c);
return 0;
}