首页 > 试题广场 >

单组_字符串

[编程题]单组_字符串
  • 热度指数:10369 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个长度为 n 的字符串 s ,请你将其倒置,然后输出。

输入描述:
第一行有一个整数 n\ (\ 1 \leq n \leq 10^5\ )
第二行有一个字符串 s,仅包含小写英文字符。


输出描述:
输出一个字符串,代表倒置后的字符串 s
示例1

输入

5
abcde

输出

edcba
//方法一:Array.Reverse 
public class Program {
    public static void Main() {
        System.Console.ReadLine();
        char[] charArray = System.Console.ReadLine().ToCharArray();
        System.Array.Reverse(charArray);
        //数组Reverse方法
        System.Console.WriteLine(new string(charArray));
    }
}

发表于 2025-04-06 14:23:03 回复(3)
C语言简单代码,注意换行符也会被读取为字符,所以需要使用getchar()来接受换行符。
#include <stdio.h>
int main() {
    long  long   n;
    scanf("%lld",&n);
    char  s[n];
    getchar();
    for (long long i=0;i<n;i++)
    {
        scanf("%c",&s[i]);
    }
    getchar();
    for (long  long  i=n-1;i>=0;i--)
    {
        printf("%c",s[i]);
    }
    return 0;
}
发表于 2025-02-07 19:57:37 回复(0)
import sys

num = sys.stdin.readline().strip().split()[0]

for line in sys.stdin:
    a = line.split()[0]
    str1 = str(a)
    b = str1[::-1]
    print(b)
发表于 2024-10-19 13:18:03 回复(0)
原来输入的字符串形式是'abcd',对这个进行l=input().split()是无效的分割不了,我一直想着分割去了
n=int(input())
lst=input()
l=lst[::-1]
re=''.join(l)
print(re)

发表于 2025-04-22 11:02:50 回复(0)
 int n = in.nextInt();
        String s = in.next();
        System.out.println(new StringBuffer(s).reverse().toString());

发表于 2025-04-18 11:59:52 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = 0;
        String s = "";
        if (in.hasNextInt()) {
            n = in.nextInt();
        }
        if (in.hasNext()) {
            s = in.next();
        }
        char[] a = s.toCharArray();
        for (int i=n-1;i>=0; i--){
            System.out.print(a[i]);
        }
    }
}

发表于 2025-04-05 15:04:29 回复(0)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
    int long n;
    scanf("%ld", &n);
    char s[n];
    for(int i=0; i<n; i++){
        scanf("%s", &s[i]);
    }
    for(int i=n-1; i>=0; i--){
        printf("%c", s[i]);
    }
    return 0;
}
发表于 2025-03-17 17:31:02 回复(0)
C语言stdio.h库中已经有输入字符串的函数puts()和gets(),多次循环printf程序运行时间会增加很多
#include <stdio.h>

int main() {
    //输入字符串
    unsigned int n=0;
    scanf("%u\n", &n) ;
    char string[n+1];
    char convert_string[n+1];
    fgets(string, n+1, stdin);
    //逆序输出
    for(int j=0; j<n; j++) {
        *(convert_string+j)= *(string+n-1-j);
    }
    *(convert_string +n) = '\0';
    puts(convert_string);
    return 0;
}
发表于 2025-03-14 13:59:35 回复(0)
m=int(input())
s=input()
print(s[::-1])
发表于 2025-03-12 18:58:47 回复(0)
num = int(input())
str = input()
print(str[:num][::-1])
发表于 2025-03-02 17:50:03 回复(0)
#include <iostream>
using namespace std;
int main() {
    int n;
    cin>>n;
    char nc[n];
    for (int i =0; i<n; i++) {
        cin>>nc[i];
    }
    for (int i =n-1; i>=0; i--) {
        cout<<nc[i];
    }
     cout<<endl;
}

发表于 2025-02-12 14:59:18 回复(0)
#include <stdio.h>

int main() {
    int i;
    long n;
    char s[100000];

    scanf("%ld",&n);
    getchar();

    for(i=0;i<n;i++)
    {
        scanf("%c",&s[i]);
    }
    getchar();
    for(i=n-1;i>-1;i--)
    {
        printf("%c",s[i]);
    }

    return 0;
}
发表于 2025-02-07 17:49:00 回复(0)
import sys
i=0
for line in sys.stdin:
    a = line.split()
    a= ''.join(a)
    if i!=0:
        a=a[::-1]
        print(a)
    i+=1
发表于 2024-11-22 21:15:30 回复(0)
为什么这个会报错啊,用注释的for循环运行就是正确的。用这个while循环无实际输出。
发表于 2024-11-11 19:31:40 回复(1)
str_length = int(input())
str = input()

for i in range(str_length, 0, -1):
    print(str[i-1], end='')

print(str[i-1], end='')
发表于 2024-11-09 07:45:52 回复(0)
import sys
a=map(int,input().split())
b =input()
c=b[::-1]
print(c)
发表于 2024-11-01 10:46:46 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int length=in.nextInt();
        in.nextLine();//清除换行符
        String s=in.nextLine();
        char[] cs= s.toCharArray();
        for(int i=s.length()-1;i>=0;i--) {
            System.out.print(cs[i]);
        }
    }
}
发表于 2024-10-30 16:22:10 回复(0)

int main()
{
    char arr[] = "abcde";

    int left = 0;
    int right = strlen(arr)- 1;

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

        left++;
        right--;
    }

    printf("%s\n", arr);

    return 0;
}
C语言
为啥我这错误,测试是OK的呢。晕了
发表于 2024-10-27 21:56:13 回复(0)
n = int(input())
s = (input())
# s = s[::-1]
# print(s)

s ="".join(reversed(s))
print(s)

发表于 2024-10-05 21:20:24 回复(0)
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextInt()) {
            //整数n
            String n = in.nextLine();
            //字符串
            String s = in.nextLine();
            StringBuilder sb = new StringBuilder(s);
            System.out.println(sb.reverse());
        }
    }
}
发表于 2024-09-26 15:40:42 回复(0)