用c语言编写一个函数把字符串中内容逆置
时间: 2023-11-29 19:06:50 浏览: 35
以下是使用 C 语言编写的函数,将输入字符串逆置:
```c
#include <stdio.h>
#include <string.h>
void reverseString(char str[]) {
int len = strlen(str);
for (int i = 0; i < len / 2; i++) {
char temp = str[i];
str[i] = str[len - 1 - i];
str[len - 1 - i] = temp;
}
}
int main() {
char str[] = "hello world";
printf("Original string: %s\n", str);
reverseString(str);
printf("Reversed string: %s\n", str);
return 0;
}
```
该代码中,`reverseString` 函数接收一个字符数组 `str`,并使用循环将字符串中的内容逆置。`main` 函数中定义了一个字符串 `str`,并输出原字符串及逆置后的字符串。
相关问题
C语言编写一个函数fun(char* s),该函数的功能是把字符串中的内容逆置
你可以使用指针来实现字符串的内容逆置。以下是一个用C语言编写的函数`fun`的示例代码:
```c
#include <stdio.h>
#include <string.h>
void fun(char* s) {
int length = strlen(s);
char* start = s;
char* end = s + length - 1;
while (start < end) {
char temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
int main() {
char str[] = "Hello, World!";
printf("原始字符串:%s\n", str);
fun(str);
printf("逆置后的字符串:%s\n", str);
return 0;
}
```
在这个示例中,函数`fun`接受一个字符指针`s`作为参数,代表要逆置的字符串。首先,使用`strlen`函数获取字符串的长度。然后,使用两个指针`start`和`end`分别指向字符串的首尾字符。通过交换`start`和`end`指向的字符,并且让`start`指针向后移动,`end`指针向前移动,直到`start`指针不再小于`end`指针为止,完成字符串内容的逆置。
在`main`函数中,我们定义了一个字符串`str`,并将其作为参数传递给函数`fun`进行逆置。最后,打印逆置后的字符串结果。
运行上述代码,输出结果如下:
```
原始字符串:Hello, World!
逆置后的字符串:!dlroW ,olleH
```
希望能帮助到你!如有任何疑问,请随时提问。
c语言把字符串中的内容逆置
可以使用C语言中的指针来实现字符串逆置,具体实现步骤如下:
1. 定义一个字符指针变量,指向字符串的首地址。
2. 定义另外两个字符指针变量,一个指向字符串的开头,一个指向字符串的结尾。
3. 使用 while 循环,将指向开头的指针不断向后移动,指向结尾的指针不断向前移动,直到两个指针相遇为止。
4. 在循环中,交换开头指针和结尾指针所指向的字符。
5. 循环结束后,字符串中的内容就被逆置了。
下面是具体的代码实现:
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char *str) {
char *begin, *end, temp;
int len = strlen(str);
begin = str;
end = str + len - 1;
while (begin < end) {
temp = *begin;
*begin = *end;
*end = temp;
begin++;
end--;
}
}
int main() {
char str[100];
printf("请输入一个字符串: ");
scanf("%s", str);
reverse_string(str);
printf("逆置后的字符串为: %s", str);
return 0;
}
```
输入一个字符串后,调用 reverse_string 函数将其逆置,最后输出逆置后的字符串。