用C语言中的数组方法编写一个函数,完成将一个字符串中的字符逆序输出,即最后一个先输出,第1个最后输出,并编写主函数进行测试。 (1)编写逆序函数,返回逆序的字符串。 (2)编写主函数,进行字符串的输入,调用逆序函数,完成字符串的输出。
时间: 2024-12-21 12:22:40 浏览: 31
在C语言中,你可以创建一个名为reverse_string
的函数来实现字符串的逆序。以下是该函数的定义以及一个简单的主函数用于测试:
#include <stdio.h>
#include <string.h>
// 函数:逆序字符串并返回逆序后的指针
char* reverse_string(const char* str) {
const int length = strlen(str);
char reversed[length + 1]; // 多一个空字符空间以容纳可能的'\0'
int i, j;
for (i = 0, j = length - 1; i < j; ++i, --j) {
reversed[i] = str[j];
reversed[j] = '\0'; // 每次交换后,确保下一个字符位置已填充'\0'
}
return reversed;
}
// 主函数
int main() {
char input[100];
printf("请输入一个字符串:");
fgets(input, sizeof(input), stdin); // 使用fgets防止换行符被读入
// 去除fgets添加的换行符
size_t newline_pos = strlen(input) - 1;
if (input[newline_pos] == '\n') {
input[newline_pos] = '\0';
}
// 调用逆序函数
char* reversed_str = reverse_string(input);
// 输出逆序后的字符串
printf("逆序后的字符串是:%s\n", reversed_str);
// 注意:在实际应用中,不需要手动释放reversed_str,因为它是栈上的临时变量
return 0;
}
相关推荐


















