写出一个函数inverse(char s[]),将输入的字符串倒序输出
时间: 2024-03-25 22:36:08 浏览: 159
好的,这是一个简单的逆序输出字符串函数的代码:
```c
void inverse(char s[]) {
int len = strlen(s);
for (int i = len - 1; i >= 0; i--) {
printf("%c", s[i]);
}
}
```
如果你需要将倒序输出的字符串保存到一个新的字符数组中,可以使用以下代码:
```c
void inverse(char s[], char t[]) {
int len = strlen(s);
int j = 0;
for (int i = len - 1; i >= 0; i--) {
t[j] = s[i];
j++;
}
t[j] = '\0';
}
```
这个函数将输入的字符串 s 倒序输出,并将结果保存到字符串 t 中。注意,我们在最后一个字符后面添加了一个空字符,以便将结果作为字符串使用。
相关问题
c语言写一个函数inverse (char s),将输入的字符倒序输出
好的,下面是一个实现该功能的 C 语言函数:
```c
#include <stdio.h>
#include <string.h>
void inverse(char s[])
{
int len = strlen(s);
for (int i = len - 1; i >= 0; i--)
{
printf("%c", s[i]);
}
}
int main()
{
char s[100];
printf("请输入一个字符串:");
scanf("%s", s);
printf("倒序输出为:");
inverse(s);
printf("\n");
return 0;
}
```
该函数接收一个字符串作为参数,然后使用 `strlen` 函数获取该字符串的长度,接着从字符串的最后一个字符开始遍历,并逐个输出字符,最终得到倒序输出的结果。
用字符数组作函数参数编程,利用一个数组实现字符串(允许输入带空格的字符串)的逆序存放。要求如下: (1)在主函数中从键盘输入字符串,字符串的最大长度为80个字符。 调用Inverse()函数将字符串逆序存放,然后在主函数中输出逆序后的字符串。 (2)在子函数Inverse()中实现字符串的逆序存放。函数原型为: void Inverse(char str[]);
好的,以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
void Inverse(char str[]);
int main()
{
char str[81];
printf("请输入字符串(最多80个字符):");
fgets(str, 81, stdin); // 使用fgets函数输入字符串,避免输入带空格的字符串时出现问题
printf("原字符串:%s", str);
Inverse(str);
printf("逆序后的字符串:%s", str);
return 0;
}
void Inverse(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;
}
}
```
在主函数中,先使用`fgets`函数输入字符串,并输出原字符串,然后调用`Inverse`函数将字符串逆序存放,最后输出逆序后的字符串。
在`Inverse`函数中,使用一个循环将字符串的前一半与后一半对应位置上的字符交换,从而实现字符串的逆序存放。
阅读全文