字符串逆序
时间: 2023-09-24 14:02:41 浏览: 54
字符串逆序是一个比较常见的问题,可以使用C语言中的指针和循环来实现。下面是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
void reverseString(char* str) {
int len = strlen(str);
char* start = str;
char* end = str + len - 1;
while(start < end) {
char temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
int main() {
char str[100];
printf("Enter a string: ");
scanf("%s", str);
reverseString(str);
printf("Reversed string: %s", str);
return 0;
}
```
在这个例子中,我们定义了一个reverseString函数,它接受一个字符指针作为参数,用于逆序字符串。在函数内部,我们首先计算字符串的长度,并使用指针start和end指向字符串的起始和末尾位置。然后我们使用一个while循环,不断交换start和end指向的字符,直到它们相遇为止。
在main函数中,我们首先读入一个字符串,然后调用reverseString函数将其逆序。最后,我们打印出逆序后的字符串。
注意,这个例子中使用了scanf函数读入字符串,如果字符串中包含空格等特殊字符,可能会出现问题。你可以使用fgets函数来读取一整行字符串,以避免这个问题。