输入一个字符串返回转置字符串
时间: 2024-12-10 22:08:05 浏览: 9
当然可以。如果你想要编写一个函数,接受用户输入的字符串并返回它的转置字符串,那么首先需要获取用户的输入,然后按照之前提到的方式遍历字符串进行字符反转。以下是一个简单的C程序示例:
```c
#include <stdio.h>
#include <string.h>
// 定义转置字符串的函数
char* transposeString(const char* input) {
size_t len = strlen(input); // 获取字符串长度
char* result = (char*)malloc(len + 1); // 新建一个足够大的数组存放结果
if (!result) { // 检查内存分配是否成功
printf("Memory allocation failed.\n");
return NULL;
}
result[len] = '\0'; // 结尾添加空字符
for (size_t i = 0; i < len; i++) {
result[len - 1 - i] = input[i]; // 反转字符顺序
}
return result;
}
int main() {
char input[100];
printf("Enter a string: ");
fgets(input, sizeof(input), stdin); // 从用户输入读取字符串
input[strcspn(input, "\n")] = '\0'; // 清除fgets读入的换行符
char* transposed = transposeString(input);
if (transposed) {
printf("Transposed string: %s\n", transposed);
free(transposed); // 释放动态分配的内存
}
return 0;
}
```
此程序首先获取用户输入,然后使用`transposeString`函数计算并存储转置后的字符串。记得在使用完后释放动态分配的内存。
阅读全文