按升序输出整数时,将最后一个整数放在新行上

Putting the last integer on a new line when outputting integers in ascending order

本文关键字:整数 新行 最后一个 升序 输出      更新时间:2023-10-16

在下面的代码中,我尝试按升序输出整数。 它可以工作,但是我希望将最终整数放在换行符上(仅限最终整数 - 而不是其他整数(。 我试过了

cout << myVec[i] << " "; endl

和。。。

cout << myVec[i] << endl;

但是,两者都没有给出我正在寻找的输出(这些会影响其他整数,这不是我想要的。

#include <iostream>
#include <vector>
using namespace std;
void SortVector(vector<int>& myVec)
{
int n = myVec.size();
int i, j;
for (i = 0; i < n - 1; i++)
for (j = 0; j < n - i - 1; j++)
if (myVec[j] > myVec[j + 1])
{
int temp = myVec[j];
myVec[j] = myVec[j + 1];
myVec[j + 1] = temp;
}
}
int main()
{
int i, n, value;
cin >> n;
vector<int> myVec;
for (i = 0; i < n; i++)
{
cin >> value;
myVec.push_back(value);
}
SortVector(myVec);
for (i = 0; i < n; i++)
cout << myVec[i] << " ";
return 0;
}

在一行上打印除最后一个元素之外的所有元素:

for (i = 0; i < n-1; i++) // notice n-1
std::cout << myVec[i] << ' ';
std::cout << 'n';

然后,您可以打印最后一个:

if(myVec.size())
std::cout << myVec.back() << 'n';