5.写一个函数void f(char a[ ]),对输入的字符串a实现逆序,在主函数中输入字符串、输出逆序后的字符串。
时间: 2024-05-01 14:21:27 浏览: 10
以下是实现逆序的函数代码:
```c
void f(char a[]) {
int len = strlen(a);
for(int i = 0; i < len / 2; i++) {
char temp = a[i];
a[i] = a[len - i - 1];
a[len - i - 1] = temp;
}
}
```
在主函数中调用该函数并输出结果的代码如下:
```c
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
f(str);
printf("逆序后的字符串为:%s\n", str);
return 0;
}
```
注意,这里的函数参数必须是 `char a[]` 的形式,而不能是 `char *a`。因为在传递字符串参数时,如果使用指针形式的参数,实际上只是传递了字符串的首地址,而不是整个字符串,无法在函数内部修改字符串内容。