从键盘输入一个最多有80个字符的字符串,用C语言编写程序将该字符串逆转
时间: 2024-12-22 10:31:28 浏览: 3
以标志字符进行字符串逆转 C语言
在C语言中,你可以使用两个指针,一个指向字符串的起始位置,另一个指向结束位置,然后交换它们所指向的字符,并逐次向中间移动,直到两个指针相遇。以下是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char str[]) {
int start = 0; // 指向开始的指针
int end = strlen(str) - 1; // 指向结束的指针
while (start < end) { // 当开始指针小于结束指针时
char temp = str[start]; // 临时存储开始位置的字符
str[start] = str[end]; // 将结束位置的字符赋给开始位置
str[end] = temp; // 将临时字符赋回结束位置
start++; // 开始指针向前移动
end--; // 结束指针向后移动
}
}
int main() {
char input[81]; // 假设最大输入长度为80,加一用于空字符 '\0'
printf("请输入一个最多80个字符的字符串: ");
fgets(input, sizeof(input), stdin); // 从键盘读取字符串
// 移除fgets结尾的换行符
if (input[strlen(input) - 1] == '\n') {
input[strlen(input) - 1] = '\0';
}
reverse_string(input);
printf("逆转后的字符串: %s\n", input);
return 0;
}
```
当你运行这个程序并输入一个字符串后,它会显示逆转后的字符串。
阅读全文