c语言从键盘输入一个字符串,然后逆序输出
时间: 2024-11-03 15:16:56 浏览: 5
在C语言中,你可以通过以下几个步骤从键盘输入一个字符串并逆序输出:
1. 首先,你需要定义一个动态数组来存储输入的字符串。因为不知道用户会输入多长的字符串,所以通常使用`malloc`函数分配内存。
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
char* input;
int length;
// 从键盘输入字符串长度
printf("请输入字符串的长度: ");
scanf("%d", &length);
// 动态分配内存
input = (char*)malloc(length * sizeof(char));
if (!input) {
printf("内存分配失败!\n");
return 1;
}
// 输入字符串
printf("请输入字符串: ");
fgets(input, length + 1, stdin); // 注意fgets处理换行符
// 逆序字符串
for (int i = 0, j = strlen(input) - 1; i < j; i++, j--) {
char temp = input[i];
input[i] = input[j];
input[j] = temp;
}
// 输出逆序后的字符串
printf("逆序后的字符串是: %s\n", input);
// 释放内存
free(input);
return 0;
}
```
阅读全文