用c语言完成从键盘上输入一串字符串,将其逆序输出
时间: 2024-10-05 10:04:32 浏览: 112
在C语言中,你可以通过以下几个步骤来实现从键盘输入一串字符串并逆序输出:
- 首先,你需要包含头文件
stdio.h
,它包含了输入/输出函数的声明。
#include <stdio.h>
#include <string.h> // 包含处理字符串的库
- 使用
fgets()
函数从键盘读取用户输入的字符串,直到遇到换行符\n
为止。
char input[100]; // 定义一个足够大的数组存储字符串
printf("请输入一个字符串: ");
fgets(input, sizeof(input), stdin); // fgets()函数读取用户输入
- 确保最后一个字符不是'\n',因为
fgets()
会将换行符一起读入。如果需要,可以使用strcspn()
函数移除它。
input[strcspn(input, "\n")] = '\0'; // 移除字符串末尾的换行符
- 接下来,你可以使用指针遍历字符串,并将每个字符逐个存放到另一个数组中,位置反转。
char reversed[100];
int i, j;
for (i = strlen(input) - 1, j = 0; i >= 0; i--, j++) {
reversed[j] = input[i];
}
reversed[j] = '\0'; // 添加字符串结束符
- 最后,打印出逆序后的字符串。
printf("逆序输出的字符串: %s", reversed);
完整代码示例:
```c #include <stdio.h> #include <string.h>
int main() { char input[100], reversed[100]; printf("请输入一个字符串: "); fgets(input, sizeof(input), stdin); input[strcspn(input, "\n")] = '\0';
int i, j;
for (i = strlen(input) - 1, j = 0; i >= 0; i--, j++) {
reversed[j] = input[i];
}
reversed[j] = '\0';
printf("逆序输出的字符串: %s", reversed);
return 0;
}
相关推荐


















