用递归的方法,将输入的宇符串逆序输出。 (main 函数一>fuc函数)
时间: 2024-05-01 15:23:46 浏览: 69
以下是使用递归方法实现字符串逆序输出的代码:
```c++
#include <iostream>
#include <cstring>
using namespace std;
void reverse(string str){
if(str.length() == 0) // 当字符串长度为0时,递归结束
return;
else{
reverse(str.substr(1)); // 递归调用
cout << str[0]; // 输出第一个字符
}
}
int main(){
string s;
cout << "请输入一个字符串:";
cin >> s;
cout << "逆序输出为:";
reverse(s);
return 0;
}
```
该代码首先定义了一个 `reverse` 函数,该函数的参数是一个字符串 `str`。在函数中,首先判断字符串是否为空,若为空则递归结束;否则,将字符串从第二个字符开始截取,并将其作为参数再次调用 `reverse` 函数,直到字符串长度为0为止。最后,输出字符串的第一个字符。
在 `main` 函数中,先输入一个字符串,然后调用 `reverse` 函数进行逆序输出。
相关问题
c语言用递归的方法,将输入的宇符串逆序输出。 (main 函数一>fuc函数)
以下是用递归方法将输入的字符串逆序输出的 C 语言代码:
```c
#include <stdio.h>
void reverse(char *str);
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
printf("逆序输出的结果为:");
reverse(str);
printf("\n");
return 0;
}
void reverse(char *str) {
if (*str == '\0') { // 递归终止条件
return;
}
reverse(str + 1); // 递归调用
printf("%c", *str);
}
```
代码中定义了一个 `reverse()` 函数,接收一个指向字符串的指针参数。在函数中,首先判断指针指向的字符是否为空,如果为空,则递归结束。否则,先递归调用 `reverse()` 函数,将指针向后移动一位,然后再输出当前指针指向的字符。这样就可以实现将字符串逆序输出的功能。
在 `main()` 函数中,先读入一个字符串,然后调用 `reverse()` 函数将其逆序输出。
用递归的方法,将输入的字符串逆序输出(main函数—fuc函数)c语言
好的,下面是代码实现:
```c
#include <stdio.h>
#include <string.h>
void reverse(char *str);
int main()
{
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
printf("逆序输出结果为:");
reverse(str);
return 0;
}
void reverse(char *str)
{
if (*str != '\0')
{
reverse(str + 1);
printf("%c", *str);
}
}
```
在这个代码中,我们使用了递归的方法来将输入的字符串逆序输出。具体来说,我们定义了一个 `reverse` 函数,它的作用是将输入的字符串逆序输出。在这个函数中,我们首先判断传入的字符串是否为空,如果不为空,就递归地调用 `reverse` 函数,将字符串的指针向后移动一位,同时输出当前字符。这样,就可以实现将输入的字符串逆序输出的功能了。
阅读全文