写一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。用C函数的方法
时间: 2024-09-11 15:01:34 浏览: 79
子串——解题思路-字符串处理
在C语言中,你可以编写一个简单的函数`reverse_string`来实现字符串的反转。下面是一个示例:
```c
#include <stdio.h>
#include <string.h> // 引入string.h头文件,包含strlen函数
// 定义函数,接收字符串指针和长度作为参数
void reverse_string(char *str) {
int length = strlen(str); // 获取字符串长度
char temp; // 存储临时字符
for (int i = 0; i < length / 2; i++) { // 只需要遍历一半,因为两边是对称的
temp = str[i]; // 交换第一个字符和最后一个字符
str[i] = str[length - i - 1];
str[length - i - 1] = temp;
}
}
// 主函数
int main() {
char input[100]; // 假设用户最多输入99个字符
printf("请输入一个字符串: ");
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;
}
```
当你运行这个程序时,它会提示你输入一个字符串,然后显示反转后的字符串。注意,这个函数假设输入的字符串长度不会超过数组`input`的大小。
阅读全文