写一个函数,使输入的字符串反序存放,在主函数中输入和输出字符串,用C语言
时间: 2024-05-13 07:15:43 浏览: 102
下面是一个实现字符串反序的函数,你可以在主函数中调用该函数来实现字符串反序存放:
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char* str) {
int i = 0;
int j = strlen(str) - 1;
while (i < j) {
char temp = str[i];
str[i] = str[j];
str[j] = temp;
i++;
j--;
}
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
reverse_string(str);
printf("反序输出的字符串为:%s\n", str);
return 0;
}
```
该函数接受一个字符串参数,利用双指针法将字符串反序存放。在主函数中,你可以输入一个字符串,然后调用该函数,输出反序存放后的字符串。
相关问题
写一函数使输入的一个字符串按反序存放在主函数中输入输出反序后的字符串
以下是一个C语言函数,可以将输入的字符串按反序存放并输出反序后的字符串:
```c
#include <stdio.h>
#include <string.h>
void fanxu(char a[]) {
int i, k, q, p;
p = strlen(a);
for (i = 0, k = p - 1; i < k; i++, k--) {
q = a[i];
a[i] = a[k];
a[k] = q;
}
}
int main() {
char arr[11];
printf("请输入字符串(只记录前十个字符):");
fgets(arr, 11, stdin);
fanxu(arr);
puts(arr);
return 0;
}
```
在主函数中,我们首先定义了一个字符数组`arr`,并使用`fgets`函数从标准输入中读取用户输入的字符串。然后,我们调用`fanxu`函数,将输入的字符串按反序存放。最后,我们使用`puts`函数输出反序后的字符串。
写一函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串C语言
很好,我可以回答您的问题。以下是相应的C代码:
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char* str) {
int len = strlen(str);
int i;
char tmp;
for (i = 0; i < len/2; i++) {
tmp = str[i];
str[i] = str[len-1-i];
str[len-1-i] = tmp;
}
}
int main() {
char str[100];
printf("请输入一个字符串:\n");
scanf("%s", str);
reverse_string(str);
printf("反序后的字符串为:%s\n", str);
return 0;
}
```
如上所示,我们定义了一个 `reverse_string()` 函数,它接收一个字符串指针,并按反序存储该字符串。在 `main()` 函数中,我们首先输入字符串,然后调用 `reverse_string()` 函数并打印结果。
希望这个回答对您有所帮助。
阅读全文