列表

详情


CPP20. 数组元素反转

描述

键盘随机输入 6 个整数,将这些数据保存到数组中,先将数组中元素按照格式输出,然后再将数组元素反转,最后按照格式再次输出数组元素。

输入描述

键盘随机输入 6 个整数

输出描述

第一次按照格式输出数组中元素,每个元素中间使用逗号和空格隔开,整体使用中括号括起来。
例如:[5, 12, 80, 7, 15, 60]
第二次按照格式输出反转后数组中元素,每个元素中间使用逗号和空格隔开,整体使用中括号括起来。
例如:[60, 15, 7, 80, 12, 5]

示例1

输入:

5
12
80
7
15
60

输出:

[5, 12, 80, 7, 15, 60]
[60, 15, 7, 80, 12, 5]

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++ 解法, 执行用时: 2ms, 内存消耗: 308KB, 提交时间: 2022-01-22

#include <iostream>
using namespace std;

int main() {

    int arr[6] = { 0 };

    int len = sizeof(arr) / sizeof(int);
    
    for (int i = 0; i < len; i++) {
        cin >> arr[i];
    }

    cout << "[";
    for (int i = 0; i < len; i++) {
        if (i == len - 1) {
            cout << arr[i] << "]" << endl;
            break;
        }
        cout << arr[i] << ", ";
    }

    // write your code here......
    int mid = len/2;
    int temp;
    for (int i = 0; i < mid ; i++){
        temp = arr[i];
        arr[i] = arr[len-1-i];
        arr[len-1-i] = temp;
    }

    cout << "[";
    for (int i = 0; i <= len; i++) {
        if (i == len - 1) {
            cout << arr[i] << "]" << endl;
            break;
        }
        cout << arr[i] << ", ";
    }

    return 0;
}

C 解法, 执行用时: 2ms, 内存消耗: 364KB, 提交时间: 2021-11-17

#include <stdio.h>
int main()
{
    int a[6];
    int i;
    for(i=0;i<6;i++)
    {
        scanf("%d",&a[i]);
    }
    printf("[");
    for(i=0;i<5;i++)
    {
        printf("%d, ",a[i]);
    }
    printf("%d]\n",a[5]);
    printf("[");
    for(i=5;i>0;i--)
    {
        printf("%d, ",a[i]);
    }
    printf("%d]",a[0]);
    return 0;
}

C++ 解法, 执行用时: 2ms, 内存消耗: 384KB, 提交时间: 2021-12-11

#include <iostream>
using namespace std;

int main() {

    int arr[6] = { 0 };

    int len = sizeof(arr) / sizeof(int);
    
    for (int i = 0; i < len; i++) {
        cin >> arr[i];
    }

    cout << "[";
    for (int i = 0; i < len; i++) {
        if (i == len - 1) {
            cout << arr[i] << "]" << endl;
            break;
        }
        cout << arr[i] << ", ";
    }

    // write your code here......
    int r = 0;
    int l = len - 1;
    int t;
    do
    {
        t = arr[l];
        arr[l] = arr[r];
        arr[r] = t;
        r++;
        l--;
    } while (l > r);

    cout << "[";
    for (int i = 0; i < len; i++) {
        if (i == len - 1) {
            cout << arr[i] << "]" << endl;
            break;
        }
        cout << arr[i] << ", ";
    }

    return 0;
}

C++ 解法, 执行用时: 2ms, 内存消耗: 388KB, 提交时间: 2022-01-26

#include <iostream>
using namespace std;

int main() {

    int arr[6] = { 0 };

    int len = sizeof(arr) / sizeof(int);
    
    for (int i = 0; i < len; i++) {
        cin >> arr[i];
    }

    cout << "[";
    for (int i = 0; i < len; i++) {
        if (i == len - 1) {
            cout << arr[i] << "]" << endl;
            break;
        }
        cout << arr[i] << ", ";
    }

    // write your code here......
    int tmp;
    for(int i=0;i<len/2;i++)
    {
        tmp=arr[i];
        arr[i]=arr[5-i];
        arr[5-i]=tmp;
    }

    cout << "[";
    for (int i = 0; i < len; i++) {
        if (i == len - 1) {
            cout << arr[i] << "]" << endl;
            break;
        }
        cout << arr[i] << ", ";
    }

    return 0;
}

C++ 解法, 执行用时: 2ms, 内存消耗: 388KB, 提交时间: 2021-12-19

#include<stdio.h>
int main()
{
    int j,i,array[6],temp;
    for(i=0;i<6;i++)
    {
        scanf("%d",&array[i]);
    }
    printf("[");
    for(i=0;i<6;i++)
    {
        printf("%d",array[i]);
        if(i!=5)
        {
            printf(", ");
        }
    }
    printf("]\n");
    for(i=0;i<3;i++)
    {
        temp=array[i];
        array[i]=array[5-i];
        array[5-i]=temp;
    }
    putchar('[');
     for(i=0;i<6;i++)
    {
        printf("%d",array[i]);
        if(i!=5)
        {
            printf(", ");
        }
    }
     printf("]\n");
    return 0;
}

上一题