C语言将一个字符串颠倒
时间: 2024-05-03 11:17:02 浏览: 93
可以使用一个循环遍历字符串,同时维护两个指针,分别指向字符串的开头和结尾,交换它们所指向的字符,直到两个指针相遇。
下面是一段示例代码:
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char* str) {
int len = strlen(str);
for (int i = 0; i < len / 2; i++) {
char temp = str[i];
str[i] = str[len - i - 1];
str[len - i - 1] = temp;
}
}
int main() {
char str[] = "Hello, world!";
printf("Original string: %s\n", str);
reverse_string(str);
printf("Reversed string: %s\n", str);
return 0;
}
```
输出结果为:
```
Original string: Hello, world!
Reversed string: !dlrow ,olleH
```
相关问题
c语言用指针实现字符串颠倒
以下是C语言用指针实现字符串颠倒的代码示例:
```c
#include <stdio.h>
#include <string.h>
void reverse(char *str) {
char *start = str;
char *end = str + strlen(str) - 1;
while (start < end) {
char temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
int main() {
char str[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
printf("Original string: %s\n", str);
reverse(str);
printf("Reversed string: %s\n", str);
return 0;
}
```
运行结果为:
```
Original string: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Reversed string: ZYXWVUTSRQPONMLKJIHGFEDCBA
```
该代码中,我们定义了一个`reverse`函数,该函数接受一个指向字符串的指针作为参数。在函数内部,我们使用两个指针`start`和`end`分别指向字符串的开头和结尾,然后交换它们所指向的字符,直到`start`指针超过了`end`指针。最后,我们在`main`函数中调用`reverse`函数,并输出结果。
将一个字符串颠倒后输出C语言
以下是将一个字符串颠倒后输出的 C 语言代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char string[100];
printf("请输入字符串:");
scanf("%s", string);
int len = strlen(string);
char reverse_string[len+1];
// 将字符串颠倒
for(int i = 0; i < len; i++)
{
reverse_string[i] = string[len-1-i];
}
reverse_string[len] = '\0';
printf("颠倒后输出的字符串为:%s", reverse_string);
return 0;
}
```
输入示例:hello world
输出示例:dlrow olleh
阅读全文