c语言,编写函数f,将字符串反序存放,在主函数中输入一个字符串,最后输出反序的字符串
时间: 2024-03-17 18:42:40 浏览: 118
好的,我可以为您编写一个C语言程序实现这个功能。程序如下:
```c
#include <stdio.h>
#include <string.h>
void f(char str[]);
int main() {
char str[100];
printf("请输入一个字符串:\n");
gets(str);
f(str);
printf("反序后的字符串为:%s\n", str);
return 0;
}
void f(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;
}
}
```
运行程序后,您可以输入一个字符串,程序会将这个字符串反序存放,并输出反序后的字符串。注意:由于使用了`gets`函数,输入字符串时要注意输入的长度不能超过99个字符。如果使用`scanf`函数输入字符串,需要使用`%s`格式化字符串,并且要注意空格和换行符的处理。
相关问题
写一函数使输入的一个字符串按反序存放在主函数中输入输出反序后的字符串
以下是一个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
#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;
}
```
该函数接受一个字符串参数,利用双指针法将字符串反序存放。在主函数中,你可以输入一个字符串,然后调用该函数,输出反序存放后的字符串。
阅读全文