C++ 以C+;的升序打印多个数字+;

C++ 以C+;的升序打印多个数字+;,c++,sorting,C++,Sorting,所以我在做这个项目,我必须从一个用户那里收集2个整数3次(循环),每次我必须按升序打印这两个整数。限制是在循环中只能有两个cout语句(一个请求它们的输入,另一个输出升序) 我唯一的问题是,当我考虑升序时,我会这样做(有两个count语句): 如果(m那么您是否考虑过更改哪个变量包含较低的数字 if(m > n){ int temp = n; n = m; m = temp; } 那么你就可以用一张照片了 cout << m << " "

所以我在做这个项目,我必须从一个用户那里收集2个整数3次(循环),每次我必须按升序打印这两个整数。限制是在循环中只能有两个cout语句(一个请求它们的输入,另一个输出升序)

我唯一的问题是,当我考虑升序时,我会这样做(有两个count语句):


如果(m那么您是否考虑过更改哪个变量包含较低的数字

if(m > n){
    int temp = n;
    n = m;
    m = temp;
}
那么你就可以用一张照片了

cout << m << " " << n << endl;
cout
这就是我被卡住的地方,因为我需要两次计数[sic]
要按升序组织的语句,如上所示

您已将此帖子标记为C++:

需要考虑的其他选择:

使用算法库:

#include <algorithm>

std::cout << std::min(m,n) << " " << std::max(m,n) << std::endl;
#包括

std::我不能确定我是否得到了这个,我会逐行接受:假设m=8,n=2,如果(8>2){//int temp=n;//在这个语句中,我们将整数temp赋值为2?n=m;//我们现在将m赋值为2?m=temp;//现在temp为2?@RostamMahabadi在您的示例中,结果是m=2和n=8,因此它将按升序打印。也许这是一个用于研究项目的应用程序t:“当请求两个数字时,受试者按非递减顺序输入它们的时间百分比是多少?”哦,这提醒了我:如果m和n相等,程序应该输出什么?(或者这是一个技巧性问题?)
cout << m << " " << n << endl;
#include <algorithm>

std::cout << std::min(m,n) << " " << std::max(m,n) << std::endl;
std::cout << ((m<n) ? m : n) << " " << ((n<m) ? m : n) << std::endl;
// guess m < n
int& first = m;
int& second = n;

if(!(m<n)) { first = n; second = m; }

std::cout << first << " " << second << std::endl;
// guess m < n
int&  first = &m;
int& second = &n;

if(!(m<n)) { first = &n; second = &m; }

std::cout << *first << " " << *second << std::endl;