c++将一组数列按相反的数组输出

c++将一组数列按相反的数组输出
如将1 2 3 4 5 6 7 8 9 10按10 9 8 7 6 5 4 3 2 1输出

int arr[] = { 1,2,3,4,5 };
int n = sizeof(arr)/sizeof(int);
for (int i = 0; i < n; i++)
{
printf("%d ", arr[n - i]);
}

#include <stdio.h>

int main()
{
    int n;
    int a[100], b[100];

    printf("请输入数字个数n:");
    scanf("%d", &n);

    printf("请输入%d个数字:\n", n);
    for(int i = 0; i < n; i++)
    {
        scanf("%d", &a[i]); // 读取输入的数字
        b[n-1-i] = a[i];    // 将输入的数字按相反的顺序存入数组b中
    }

    printf("输入数组:");
    for(int i = 0; i < n; i++)
    {
        printf("%d ", a[i]); // 输出原始数组
    }

    printf("\n相反数组:");
    for(int i = 0; i < n; i++)
    {
        printf("%d ", b[i]); // 输出相反的数组
    }

    return 0;
}
不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 以下回答来自chatgpt:

    可以使用C++的数组和循环结构来解决这个问题。

    具体步骤如下:

    1.定义一个长度为N的整型数组arr,将给定数列存入数组中。

    int arr[N] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    

    2.使用for循环来遍历数组,将数组元素按相反的顺序输出。

    for(int i = N-1; i >= 0; i--){
        cout << arr[i] << " ";
    }
    

    完整代码如下:

    #include<iostream>
    using namespace std;
    
    const int N = 10;
    
    int main(){
        int arr[N] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
        for(int i = N-1; i >= 0; i--){
            cout << arr[i] << " ";
        }
        return 0;
    }
    

    输出结果为:

    10 9 8 7 6 5 4 3 2 1
    

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^