【分享】一些经典的C/C++语言基础算法及代码(四)
来源:互联网 发布:筋长一寸寿延十年 知乎 编辑:程序博客网 时间:2024/05/29 16:41
阅读到的一些经典C/C++语言算法及代码。在此分享。
今天碰到的一个问题:用递归的方式颠倒字符串。
C源代码如下
#include <stdio.h>void Reverse();int main(){ printf("Enter a sentence: \n"); Reverse(); return 0;}void Reverse(){ char c; scanf("%c", &c); if( c != '\n') { Reverse(); printf("%c", c); }}
直接翻译为C++
//最后却没有输出,不知道是哪里出问题了,可有高手赐教?#include <iostream>using namespace std;void Reverse();int main(){ cout << "Enter a sentence: " << endl; Reverse(); return 0;}void Reverse(){ char c; cin >> c; if( c != '\n') { Reverse(); cout << c; }}
写成这样子就OK
#include<iostream>using namespace std;void Reverse(char s[], int i){ if(s[i]) Reverse(s,i+1); //if条件成立,即进行递归 cout << s[i]; //按反序输出字符串中的各个字符}int main(){ char str[100]; cout << "Enter a sentence: " << endl; cin.getline(str,100); Reverse(str,0); cout << endl;}
阅读全文
0 0
- 【分享】一些经典的C/C++语言基础算法及代码(四)
- 【分享】一些经典的C/C++语言基础算法及代码(一)
- 【分享】一些经典的C/C++语言基础算法及代码(二)
- 【分享】一些经典的C/C++语言基础算法及代码(三)
- 5个经典的C语言基础算法及代码
- c/c++--10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- 10个经典的C语言面试基础算法及代码
- idea 配置Tomcat
- 关于卸载赛风(psiphon)打不开网页解决办法
- 【分享】一些经典的C/C++语言基础算法及代码(一)
- 【分享】一些经典的C/C++语言基础算法及代码(二)
- 【分享】一些经典的C/C++语言基础算法及代码(三)
- 【分享】一些经典的C/C++语言基础算法及代码(四)
- 关键字@property与@synthesize梳理
- Python构建代理池
- OpenGL设置纹理
- Mac下解决ssh链接linux服务器丢包问题
- 统计学习方法-李航
- 机器学习-周志华
- Microsoft Visual Studio 注册码
- Mac iTerm2+OhMyZsh+agnoster