不运用C语言中的指针编写一个函数,完成将一个字符串中的字符逆序输出,即最后一个先输出,第1个最后输出,并编写主函数进行测试。 编写逆序函数,返回逆序的字符串。
时间: 2024-12-21 22:23:45 浏览: 8
在C语言中,你可以通过以下几个步骤编写一个函数来实现字符串的逆序输出,不使用指针:
1. 定义一个函数`reverse_string`,接受一个字符串参数`str`:
```c
#include <stdio.h>
#include <string.h> // 使用strlen函数
void reverse_string(char str[]) {
int len = strlen(str);
char temp;
// 从字符串尾部开始遍历,逐个交换字符
for (int i = 0; i < len / 2; i++) {
temp = str[i];
str[i] = str[len - 1 - i];
str[len - 1 - i] = temp;
}
}
```
2. 主函数`main`中调用这个函数并测试:
```c
int main() {
char input[100]; // 增加足够的空间以容纳可能的长字符串
printf("Enter a string to reverse: ");
fgets(input, sizeof(input), stdin); // 注意去掉多余的换行符
input[strcspn(input, "\n")] = '\0'; // 删除fgets读取到的换行符
reverse_string(input);
printf("Reversed string: %s\n", input);
return 0;
}
```
在这个例子中,`reverse_string`函数通过交换字符实现了字符串的逆序,而主函数则负责接收用户的输入并调用该函数。
阅读全文