C ++按升序排序数组打印

时间:2015-11-07 14:48:39

标签: c++ arrays sorting

我试图按升序对数组进行排序并将其打印出来并且我无法将我的cout放在我的代码中。

for (int k=0; k<ARRAY_SIZE; k++) {
    for (int l=1; l<ARRAY_SIZE-1; l++) {
        if(numbers[l] > numbers[k]) {
            temp = numbers[k];
            numbers[k] = numbers[l];
            numbers[l] = temp;
        }
        cout<<numbers[k];
    }    
}

3 个答案:

答案 0 :(得分:0)

删除实际的cout并将其放在排序循环之后的新循环中

for(int k = 0 ; k < ARRAY_SIZE; ++k)
    cout << numbers[k] << " ";

答案 1 :(得分:0)

如果要查看排序结果,则必须在new for循环中打印数组

答案 2 :(得分:0)

这是一个程序,它查找数字n的长度并将其转换为数组arr并以升序对数组进行排序。(possible aptitude question)

#include <iostream>
using namespace std;
int main()
{
    int n,i=0,j,num,temp,len=0,arr[10]={0};
    cin>>n;
    num=n;
while(n!=0)
    {
        len++;
        n/=10;
    }
    cout<<len<<endl;
    for ( i = len; i >= 0; i--)
        {
            arr[i] = num%10;
            num/=10;
    }
for(i=1;i<=len;i++)
    for(j=0;j<=len-i;j++)
{
    if(arr[j]>arr[j+1])
    {
        temp=arr[j];
        arr[j]=arr[j+1];
        arr[j+1]=temp;
    }
}
for(i=1;i<=len;i++)
{
    cout<<arr[i]<<endl;
}
return 0;
}