下面是一个完成字符串倒序排序的函数示例:
#include <iostream>
#include <cstring>
void inverted_order(char *input, int length, char *output) {
// 复制输入字符串到输出字符串
strcpy(output, input);
// 使用指针实现倒序排序
char *start = output;
char *end = output + length - 1;
while (start < end) {
char temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
int main() {
const int maxLength = 100; // 假设输入的最大长度为100
char input[maxLength];
std::cout << "请输入一个任意长度的字符串:";
std::cin.getline(input, maxLength);
int length = strlen(input);
char output[length + 1];
inverted_order(input, length, output);
std::cout << "原始字符串:" << input << std::endl;
std::cout << "倒序排序后的字符串:" << output << std::endl;
return 0;
}
在主函数中,首先输入一个任意长度的字符串(假设最大长度为100),然后调用inverted_order
函数进行倒序排序,最后输出原始字符串和排序后的结果。
注意:为了安全起见,在使用strcpy
复制输入字符串到输出字符串时,可以确保输出字符数组有足够的空间来存储结果。同时,在主函数中定义了常量 maxLength
来限制输入的最大长度,并根据这个大小声明了 input
数组和 output
数组的大小。
内容由零声教学AI助手提供,问题来源于学员提问