首页 > 试题广场 >

数组逆置

[编程题]数组逆置
  • 热度指数:9111 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
输入一个字符串,长度小于等于200,然后将数组逆置输出。

输入描述:
测试数据有多组,每组输入一个字符串。


输出描述:
对于每组输入,请输出逆置后的结果。
示例1

输入

hdssg

输出

gssdh

while True:
    try:
        print(input()[::-1])
    except:
        break

python one line solution.

发表于 2017-10-01 10:34:02 回复(0)
import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        String str = new Scanner(System.in).nextLine();
        System.out.print(new StringBuilder(str).reverse());
    }
}

编辑于 2018-08-03 02:42:57 回复(2)
#include 
(849)#include 
using namespace std;
int main(){
    string str;
    while(cin>>str){
        for(int i=str.size()-1;i>=0;i--){
            cout<<str[i];
        }
        cout<<endl;
    }
    return 0;
}
发表于 2020-05-07 16:48:14 回复(0)
#include<stdio.h>
int main()
{
    char a[200],*p;
    scanf("%s",a);
    p=a+strlen(a)-1;
    for(int i=0;i<strlen(a);i++)
        printf("%c",*p--);
}

发表于 2020-04-08 14:42:47 回复(1)
Java 解法
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String s = scanner.nextLine();
        String s1 = new StringBuilder(s).reverse().toString();
        System.out.println(s1);
    }
}
当然也可以如下一行解决,但没必要
import java.util.Scanner;
public class Main02 {
    public static void main(String[] args) {
        System.out.println(new StringBuilder(new Scanner(System.in).nextLine()).reverse().toString());
    }
}



发表于 2020-03-06 16:01:30 回复(0)
//我以为我的已经很简洁了
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
    string str;
    cin>>str;
    int n=str.length();
    for(int i=n-1;i>=0;i--)
    {
        cout<<str[i];
    }
}
发表于 2019-10-14 17:54:23 回复(0)
先计算数组长度,再从后向前遍历
#include<iostream>
#include<string.h>
using namespace std;
int main(){
    char str[201];
    while(cin>>str){
    int n=strlen(str);
    for(int i=n-1;i>=0;i--){
        cout<<str[i];
    }    
    cout<<endl;
    }
    return 0;
}

发表于 2018-03-20 13:35:42 回复(0)
#include<stdio.h>
#include<string.h>
int main (){//the shorter,the better.
    char str[200],c;int i,n;
    for(;~scanf("%s",str);)
        for(n=strlen(str),i=n-1;i>=0;i?printf("%c",str[i]):printf("%c\n",str[i]),i--);
}

发表于 2018-01-13 13:13:23 回复(0)
#include<string>
#include<algorithm>
#include<iostream>
using namespace std;
int main(){
    string s;
    while(cin>>s){
		reverse(s.begin(),s.end());
		cout<<s<<endl;
    }
    return 0;
}

发表于 2016-10-29 10:08:39 回复(0)
#include<bits/stdc++.h>
int main(){
    char a[201]={};
    while(scanf("%s",a)!=EOF)
        for(int i=200;i>=0;i--)
            if(a[i]!=NULL)
                printf("%c",a[i]);
}
编辑于 2019-03-04 13:51:47 回复(0)
reverse秒了
#include <iostream>
#include <algorithm>
using namespace std;

int main() {
    string str;
    while(cin >> str) {
        reverse(str.begin(),str.end());
        cout << str << endl;
    }
    return 0;
}

发表于 2023-01-24 15:38:44 回复(0)
#include<bits/stdc++.h>
using namespace std;

int main(){
    string s;
    cin>>s;
    vector<char>rs;
    for(int i=0;i<s.size();i++){
        rs.push_back(s[i]);
    }
    vector<char>::reverse_iterator it;
    for(it=rs.rbegin();it!=rs.rend();it++){
        cout<<*it;
    }
    cout<<endl;
    return 0;    
}

发表于 2024-03-18 19:25:23 回复(0)
#include <algorithm>
#include <iostream>
#include <string>
using namespace std;

int main() {
    string str;
    while (cin >> str) {
        reverse(str.begin(), str.end());
        cout << str << endl;
    }
    return 0;
}

编辑于 2024-03-03 18:54:33 回复(0)
#include <stdio.h>

void Reverse(char *str)
{
    int left = 0;
    int right = strlen(str)-1;

    while(left < right)
    {
        char tmp = str[left];
        str[left] = str[right];
        str[right] = tmp;

        left++;
        right--;
    }

}

int main() {

    char str[200] = {0};
    while(scanf("%s", str) != EOF)
    {
        Reverse(str);
        printf("%s\n", str);
    }

    return 0;
}
发表于 2023-08-06 00:08:59 回复(0)
#include <iostream>
#include<algorithm>
using namespace std;

int main() {
    string s;
    while(cin>>s){
        reverse(s.begin(),s.end());
        cout<<s<<endl;
    }
}

发表于 2023-03-17 19:30:35 回复(0)
#include <cstdio>
#include <string>
using namespace std;

int main(){
    char arr[300];
    while(scanf("%s",arr) != EOF){
        string str = arr;
        int len = str.size();
        for(int i = 0; i < len; ++i){
            printf("%c",str[len-i-1]);   
        }
        printf("\n");
    }
    return 0;
}

发表于 2023-03-10 15:21:23 回复(0)
#include <iostream>
using namespace std;

int main() {

    char str[201];
    while (cin >> str) {
        int len = 0 ;
        for (; str[len] != '\0' ; len++);
        for (int i = len - 1, j = 0 ; j < len / 2 ; i--, j++)
            swap(str[i], str[j]);
        for (int i = 0 ; i < len ; i++)
            cout << str[i];
        cout << endl;
    }
    return 0;
}只有我这么憨憨的吗…
发表于 2022-08-16 19:43:11 回复(0)
#include<iostream>
using namespace std;
int main()
{
    string str;
    string::iterator it;
    while(cin>>str)
    {
        
        for(it = str.end()-1;it!=str.begin()-1;it--)
            cout<<*it;
        cout<<endl;
    }
}


发表于 2022-03-02 23:46:13 回复(0)
#include<iostream>
#include<string>

using namespace std;

int main(){
    string str;
    while(cin >> str){
        for(int i = str.size() - 1; i >= 0; i--){
            cout << str[i];
        }
        cout << endl;
    }
    return 0;
}

发表于 2022-02-24 23:03:29 回复(0)
# include <iostream>
# include <string>

using namespace std;

int main()
{
    string str1;
    while(cin>>str1)
    {
        string str2;
        for(int i=0;i<=str1.size();i++)
        {
            str2[i]=str1[str1.size()-i-1];
        }
        for(int i=0;i<str1.size();i++)
        {
            cout<<str2[i];
        }
        cout<<endl;
    }
    return 0;
 } 
发表于 2022-02-18 15:52:09 回复(0)