此程序代码采用冒泡排序数组,并且输出,可是输出结果不正确,为什么解决办法

此程序代码采用冒泡排序数组,并且输出,可是输出结果不正确,为什么
#include <iostream>
#include <cstring>
using namespace std;
void Range(int argn[],int n)
{
int i,j,t;
for(i=0;i<n-1;i++)
{
for(j=0;j<n-i-1;j++)
{
if(argn[j]>argn[j+1])
t=argn[j];
argn[j]=argn[j+1];
argn[j+1]=t;
}
}
  for(i=0;i<n;i++)
{
cout<<argn[i]<<" ";
}
cout<<endl;

}
int main()
{
int array1[10]={5,6,7,3,2,4,13,11,17,10};
Range(array1,10);

return 0;
}

------解决方案--------------------
C/C++ code
#include <iostream>
#include <cstring>
using namespace std;
void Range(int argn[],int n)
{
    int i,j,t;
    for(i=0;i<n-1;i++)
    {
        for(j=0;j<n-i-1;j++)
        {
            if(argn[j]>argn[j+1])
            {                       //  这些语句应该括起来
                t=argn[j];
                argn[j]=argn[j+1];
                argn[j+1]=t;
            }
        }
    }
    for(i=0;i<n;i++)
    {
        cout<<argn[i]<<" ";
    }
    cout<<endl;
}
int main()
{
    int array1[10]={5,6,7,3,2,4,13,11,17,10};
    Range(array1,10);

    return 0;
}