运用C语言中的数组并且不用指针编写一个函数,完成将一个字符串中的字符逆序输出,即最后一个先输出,第1个最后输出,并编写主函数进行测试。 编写逆序函数,返回逆序的字符串。
时间: 2024-12-21 19:23:43 浏览: 7
在C语言中,你可以使用数组并结合循环结构编写一个简单的函数来逆序输出字符串。这里有一个示例:
```c
#include <stdio.h>
#include <string.h>
// 定义函数,接受字符串作为参数,返回逆序后的字符串
char* reverse_string(char str[]) {
int length = strlen(str);
char reversed[length + 1]; // 增加1是因为我们需要在结束处添加'\0'
// 从字符串尾部开始,逐个字符复制到新数组
for (int i = 0; i < length; i++) {
reversed[i] = str[length - i - 1];
}
reversed[length] = '\0'; // 添加结束标志
return reversed;
}
// 主函数测试逆序函数
int main() {
char input[10];
printf("Enter a string (up to 10 characters): ");
fgets(input, sizeof(input), stdin); // 注意fgets会保留换行符,所以在使用之前可能需要去掉它
input[strcspn(input, "\n")] = '\0'; // 移除换行符
char* reversed_str = reverse_string(input);
printf("Reversed string: %s\n", reversed_str);
free(reversed_str); // 释放内存
return 0;
}
```
这个`reverse_string`函数接收一个字符串作为输入,创建一个新的数组`reversed`,然后通过遍历原字符串并将字符插入新数组的相应位置来实现逆序。主函数则负责获取用户输入,调用逆序函数,并打印结果。
阅读全文