C++ C++;数组中的数字排序

C++ C++;数组中的数字排序,c++,loops,for-loop,C++,Loops,For Loop,我正试图把它弄出来: 110 29 3.8 47 5.6 我该怎么做 我的代码: #include <iostream> #include <cmath> using namespace std; int main() { const int n=10; int Tab[n]={1,2,3,4,5,6,7,8,9,10}; for(int i=0;

我正试图把它弄出来:

  • 110
  • 29
  • 3.8
  • 47
  • 5.6
我该怎么做

我的代码:

 #include <iostream>
    #include <cmath>
    
    using namespace std;
    
    int main()
    {
        const int n=10;
        int Tab[n]={1,2,3,4,5,6,7,8,9,10};
    
    
        for(int i=0; i<5; i++)
            for(int j=5; j>=0; j--)
                cout << Tab[i] << " " << Tab[j] << endl;
    
    
        return 0;
    }
#包括
#包括
使用名称空间std;
int main()
{
常数int n=10;
int Tab[n]={1,2,3,4,5,6,7,8,9,10};
对于(int i=0;i=0;j--)

cout您的代码存在多个问题

  • 您需要迭代数组的所有元素 我该怎么做

    您不需要两个循环,只需使用一个循环并计算第二个索引:

        for(int i=0; i<n/2; i++) 
            cout << Tab[i] << " " << Tab[n-i-1] << endl;
    

    for(int i=0;i如果要对数组进行排序,可以使用std::sort函数。此函数适用于数组或向量。您的是数组。
    需要两个参数:数组的开头和要对数组进行排序的长度n。
    范例

    #包括
    使用名称空间std;
    int main()
    {
    int arr[]={1,5,8,9,6,7,3,4,2,0};
    int n=sizeof(arr)/sizeof(arr[0]);
    排序(arr,arr+n);
    
    你的问题是什么?你的数组已经排序了,所以不需要再排序了。是不是29,38,47,56?是的,因为在你建议的输出中你跳过了9,但不清楚why@Slava我犯了错误。我的错。它不起作用。*10*2 10*3 10*4 9*5 8这是你的代码。犯了错误,应该是
    -1
    不是
    +1
    ,现在它已修复,请参见实时示例
        for(int i=0; i<n/2; i++) 
            cout << Tab[i] << " " << Tab[n-i-1] << endl;
    
        for(int i=0; i<(n+1)/2; i++) 
    
    #include <bits/stdc++.h>
    using namespace std;
     
    int main()
    {
        int arr[] = { 1, 5, 8, 9, 6, 7, 3, 4, 2, 0 };
        int n = sizeof(arr) / sizeof(arr[0]);
     
        sort(arr, arr + n);
     
        cout << "\nArray after sorting ";
    
        for (int i = 0; i < n; ++i)
            cout << arr[i] << " ";
     
        return 0;
    }