C语言不使用strrev函数,输入字符串,反向输出字符串
时间: 2023-05-23 11:01:48 浏览: 156
这可以通过逆序遍历字符串并将字符逐个输出来实现。以下是一个简单的 C 代码示例:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int len, i;
printf("请输入字符串:\n");
scanf("%s", str);
len = strlen(str);
printf("反向输出字符串:");
for (i = len-1; i >= 0; i--)
{
printf("%c", str[i]);
}
printf("\n");
return 0;
}
```
该程序首先通过 `scanf` 函数获取用户输入的字符串,并使用 `strlen` 函数计算字符串的长度。接下来,通过 `for` 循环逆序遍历字符串并逐个输出其中的字符,最终输出反向的字符串。
相关问题
C语言输入字符串,反向输出字符串
这是一个很简单的问题,在C语言中,可以使用strrev函数来将字符串反向输出。下面是一个示例代码:
```
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
printf("请输入一个字符串:");
gets(str);
strrev(str);
printf("反向输出的字符串:%s\n", str);
return 0;
}
```
你可以通过输入一个字符串来测试这个代码,它将把字符串反向输出。
3. (简答题)编写一个程序来反转字符串,而不使用 string.h 库中定义的and函数。 strlen() strrev() 下面是一个运行示例。 ------------------------------------ 输入字符串:南京 反向字符串:gnijnaN
好的,以下是C语言的实现代码:
```c
#include <stdio.h>
// 函数声明
void reverse(char str[]);
int main()
{
char str[100];
printf("输入字符串:");
scanf("%s", str);
reverse(str);
printf("反向字符串:%s\n", str);
return 0;
}
// 函数定义
void reverse(char str[])
{
int len = 0;
while (str[len] != '\0') // 获取字符串长度
{
len++;
}
for (int i = 0; i < len / 2; i++) // 反转字符串
{
char temp = str[i];
str[i] = str[len - 1 - i];
str[len - 1 - i] = temp;
}
}
```
该程序读入一个字符串,然后通过 `reverse()` 函数将其反转,最后输出反转后的字符串。
需要注意的是,该程序没有使用 C 语言标准库中定义的 `string.h` 库中的 `strlen()` 和 `strrev()` 函数,而是通过手动编写代码实现了字符串反转的功能。
阅读全文