字符串反转c语言
时间: 2023-06-22 18:23:31 浏览: 61
可以使用指针的方法来反转字符串,具体实现如下:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
char *p1 = str;
char *p2 = str + len - 1;
while (p1 < p2)
{
char temp = *p1;
*p1 = *p2;
*p2 = temp;
p1++;
p2--;
}
printf("反转后的字符串:%s\n", str);
return 0;
}
```
首先使用 `strlen()` 函数获取字符串的长度,然后定义两个指针 `p1` 和 `p2`,分别指向字符串的首尾字符。通过循环交换 `p1` 和 `p2` 指向的字符,最终就可以完成字符串的反转。
相关问题
c语言字符串反转
可以使用指针和循环来实现字符串反转。具体的代码如下:
```c
#include <stdio.h>
#include <string.h>
void reverse(char *str) {
int len = strlen(str);
char *p = str;
char *q = str + len - 1;
while (p < q) {
char temp = *p;
*p++ = *q;
*q-- = temp;
}
}
int main() {
char str[] = "hello world";
printf("Original string: %s\n", str);
reverse(str);
printf("Reversed string: %s\n", str);
return 0;
}
```
输出结果为:
```
Original string: hello world
Reversed string: dlrow olleh
```
在这个例子中,我们首先计算字符串的长度,然后用两个指针 p 和 q 分别指向字符串的开头和结尾。然后在循环中,我们不断交换 p 和 q 指向的字符,直到两个指针相遇。最后,我们就得到了反转后的字符串。
c语言实现字符串反转
Sure! 下面是一个使用C语言实现字符串反转的例子:
```c
#include <stdio.h>
#include <string.h>
void reverseString(char* str) {
int left = 0;
int right = strlen(str) - 1;
while (left < right) {
char temp = str[left];
str[left] = str[right];
str[right] = temp;
left++;
right--;
}
}
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, sizeof(str), stdin);
// 去除换行符
str[strcspn(str, "\n")] = '\0';
reverseString(str);
printf("反转后的字符串为:%s\n", str);
return 0;
}
```
你可以运行这段代码,输入一个字符串,然后它会输出反转后的字符串。希望对你有所帮助!如果你有任何其他问题,请随时提问。