题目描述:输入一个字符串,输出反序后的字符串
时间: 2024-12-31 12:20:32 浏览: 113
### 字符串反转的多种实现方式
#### 使用C语言实现字符串反转
在C语言中,可以通过交换字符位置来实现字符串反转。具体来说,在`main`函数内读取用户输入的字符串,并利用两个指针分别指向字符串首尾两端,逐步向中间靠拢并互换字符直至完成整个字符串的反转。
```c
#include <stdio.h>
#include <string.h>
int main(void) {
char str[128];
char tmp;
scanf("%s", str);
int i = 0;
int j = strlen(str) - 1;
while (j > i) {
tmp = str[i];
str[i] = str[j];
str[j] = tmp;
i++;
j--;
}
printf("%s\n", str);
return 0;
}
```
这段代码展示了如何接收一个字符串作为输入,并将其反转后输出[^2]。
#### Python中的字符串反转方法
Python提供了简洁而强大的语法糖使得字符串操作变得异常简单。以下是几种常见的字符串反转的方法:
##### 利用切片操作
这是最直观也是效率最高的方式之一。只需要指定步长为负数即可轻松达成目标。
```python
original_string = "hello"
reversed_string = original_string[::-1]
print(reversed_string)
```
此段脚本会打印出`olleh`[^4]。
##### 应用内置函数`reversed()`
虽然这种方法稍微复杂一点因为它返回的是迭代器对象而不是直接得到新的字符串,但是配合上`''.join()`就能完美解决问题了。
```python
original_string = "world"
reversed_iterator = reversed(original_string)
reversed_string = ''.join(reversed_iterator)
print(reversed_string)
```
上述例子同样能够正确显示翻转过的结果即`dlrow`。
#### Java版本的解决方案
对于Java开发者而言,则可以考虑先将原字符串转化为字符数组形式然后再逐一拼接成新字符串的形式来进行处理。
```java
String original = "Hello";
char[] chars = original.toCharArray();
StringBuilder reversed = new StringBuilder();
for (int i = chars.length - 1; i >= 0; i--) {
reversed.append(chars[i]);
}
System.out.println(reversed.toString()); // 输出 olleH
```
这里使用到了`StringBuilder`类以便更高效地构建最终要输出的内容[^5]。
阅读全文
相关推荐

















