自定义一个函数是输入的字符串,按反序存放在主函数中进行测试。用C语言编写
时间: 2024-03-14 20:48:01 浏览: 67
好的,您可以参考以下代码实现:
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char* str);
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
printf("原字符串:%s\n", str);
reverse_string(str);
printf("反转后字符串:%s\n", str);
return 0;
}
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;
}
}
```
在这个程序中,我们自定义了一个函数 `reverse_string`,这个函数的功能是将输入的字符串反转。在 `main` 函数中,我们先输入一个字符串,然后输出原字符串,接着调用 `reverse_string` 函数,将字符串反转,最后输出反转后的字符串。
函数 `reverse_string` 的实现方式是将字符串的前一半和后一半对应位置的字符交换,从而实现字符串的反转。
相关问题
写一函数使输入的一个字符串按反序存放在主函数中输入输出反序后的字符串
以下是一个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);
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[100];
printf("请输入一个字符串:");
scanf("%s", str);
reverse_string(str);
printf("反序存放后的字符串为:%s\n", str);
return 0;
}
```
在主函数中,我们首先输入一个字符串,并将其保存在字符数组 `str` 中。然后,我们调用 `reverse_string` 函数,将输入的字符串按照反序进行存放。最后,我们输出反序存放后的字符串。
阅读全文