用C语言输入一串字符串逆序打印字符
时间: 2024-11-13 16:23:51 浏览: 3
在C语言中,要实现输入一串字符串并逆序打印字符,可以按照以下步骤操作:
1. 首先,我们需要定义一个动态数组来存储用户输入的字符串。因为不知道用户会输入多长的字符串,所以通常使用`fgets()`函数读取直到遇到换行符为止。
```c
#include <stdio.h>
#include <stdlib.h> // 为了使用malloc()
#define MAX_LEN 100 // 假设最大长度为100,可以根据实际情况调整
// 动态分配内存存储字符串
char* inputString = (char*) malloc(MAX_LEN * sizeof(char));
```
2. 使用`fgets()`函数读取用户输入,并记得去掉末尾的换行符`\n`。
```c
printf("请输入一串字符串:");
fgets(inputString, MAX_LEN, stdin); // 读取用户输入
inputString[strlen(inputString) - 1] = '\0'; // 去掉末尾的'\n'
```
3. 接下来,我们创建一个新的字符串来存储逆序后的结果,并从原字符串的最后一个字符开始遍历到第一个字符。
```c
char reversedString[MAX_LEN];
int index = MAX_LEN - 1; // 从倒数第一位开始
while (index >= 0) {
reversedString[index] = inputString[index]; // 将每个字符复制到新字符串
index--;
}
reversedString[index + 1] = '\0'; // 结束字符串
```
4. 最后,打印出逆序后的字符串。
```c
printf("逆序后的字符串是:%s\n", reversedString);
```
阅读全文