C++ 尝试将3个值从最小值到最大值C++;
我有一个程序,它把一个人输入的数字相加。 这种情况发生了3次,所以我一共有3次。我遇到的问题是,无论求和结果是什么,我都需要从最大值到最小值排序。(这不是完整的代码,假设求和是经过计算和声明的)C++ 尝试将3个值从最小值到最大值C++;,c++,C++,我有一个程序,它把一个人输入的数字相加。 这种情况发生了3次,所以我一共有3次。我遇到的问题是,无论求和结果是什么,我都需要从最大值到最小值排序。(这不是完整的代码,假设求和是经过计算和声明的) #包括 #包括 使用名称空间std; 字符串firstName1,lastName1;//用户名的输入和输出 字符串firstName2,lastName2; 字符串firstName3,lastName3; //从头到尾 如果(总和>总和2>总和3) { C++中的CUT< P>,语法和> SUMY2
#包括
#包括
使用名称空间std;
字符串firstName1,lastName1;//用户名的输入和输出
字符串firstName2,lastName2;
字符串firstName3,lastName3;
//从头到尾
如果(总和>总和2>总和3)
{
C++中的CUT< P>,语法<代码>和> SUMY2> > SUMY3不会按你的假设进行评估。它相当于<代码>(SUM>SUMI2)> SUMY3/<代码>
如果sum
大于sum_2
,sum>sum_2
将计算为true。然后,该布尔值将转换为整数1,并与sum_3
进行比较
要完成您想要完成的任务,请尝试:
if (sum > sum_2 && sum_2 > sum_3)
使用助手交换功能:
void swap( int *a, int *b )
{
int temp = *a;
*a = *b;
*b = temp;
}
并对其进行排序:
int sums[3] = { sum, sum_2, sum_3 };
for ( int i = 0; i < 3; ++i )
for ( int j = 0; j < i; ++j )
if ( sums[j] < sums[i] )
swap( &sums[j], &sums[i] );
cout << "Total for" << " " << firstName1 << " " << lastName1 << " " << "$" << sums[0] << ".00" << endl;
cout << "Total for" << " " << firstName2 << " " << lastName2 << " " << "$" << sums[1] << ".00" << endl;
cout << "Total for" << " " << firstName3 << " " << lastName3 << " " << "$" << sums[2] << ".00" << endl;
int sums[3]={sum,sum_2,sum_3};
对于(int i=0;i<3;++i)
对于(int j=0;jint sums[3] = { sum, sum_2, sum_3 };
for ( int i = 0; i < 3; ++i )
for ( int j = 0; j < i; ++j )
if ( sums[j] < sums[i] )
swap( &sums[j], &sums[i] );
cout << "Total for" << " " << firstName1 << " " << lastName1 << " " << "$" << sums[0] << ".00" << endl;
cout << "Total for" << " " << firstName2 << " " << lastName2 << " " << "$" << sums[1] << ".00" << endl;
cout << "Total for" << " " << firstName3 << " " << lastName3 << " " << "$" << sums[2] << ".00" << endl;