从键盘输入一行字符串,将其逆序存储后再输出c语言程序
时间: 2024-03-12 21:46:19 浏览: 94
下面是一个简单的 C 语言程序,可以实现输入一行字符串,将其逆序存储后再输出:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int i, len;
printf("请输入一行字符串:");
fgets(str, 100, stdin);
len = strlen(str);
printf("逆序存储后的字符串为:");
for (i = len - 1; i >= 0; i--)
{
printf("%c", str[i]);
}
return 0;
}
```
这个程序首先定义了一个字符数组 `str`,用于存储输入的字符串。然后使用 `fgets()` 函数从标准输入中读取一行字符串,并将其存储在 `str` 中。接着使用 `strlen()` 函数计算字符串的长度,并使用一个循环逆序输出字符串中的字符。最后返回 0 表示程序正常结束。
相关问题
从键盘输入一行字符串,将其逆序存储然后再输出c语言程序
好的,以下是将输入字符串逆序存储并输出的C语言程序:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int len, i, j;
printf("请输入一个字符串:");
scanf("%s", str);
len = strlen(str);
// 将字符串逆序存储
for (i = 0, j = len - 1; i < j; i++, j--) {
char temp = str[i];
str[i] = str[j];
str[j] = temp;
}
// 输出逆序后的字符串
printf("逆序后的字符串为:%s", str);
return 0;
}
```
注意,以上程序只适用于输入不带空格的字符串。如果需要输入带空格的字符串,则需要使用 `fgets` 函数来读取输入,而不是使用 `scanf`。
c语言从键盘输入一个字符串,然后逆序输出
在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;
}
```
阅读全文