171110—题:【递归改写】
来源:互联网 发布:快手视频采集源码 编辑:程序博客网 时间:2024/06/04 18:56
今天终于把断断续续考虑了一个星期的题想了出来。
原题是:
将print函数改写成等价的递归形式。#include<iostream>using namespace std;void print(int w){ for(int i=1;i<=w;i++) { for(int j=1;j<=i;j++) cout<<i<<" "; cout<<endl; }}int main(){ print(5);}
想过几个结构。
首先,递归调用肯定不能写在for循环里。
其次,考虑到变量的储存特性和作用域,对这个计数器“i”的位置考虑来去,放在了print函数体内。
原码如下:
#include<iostream>using namespace std;void print(int w){ int i; if(w) { print(w-1); //最后一次调用的函数最先输出(返回)。找本子记下来。 for(i=0;i<w;i++) { cout<<(w)<<' '; } cout<<endl; }}int main(void){ print(5);}
真正写出来的时候,发现并没有自己预想的那么复杂。真不知道自己为什么想了那么久啥都没想到。。
阅读全文
0 0
- 171110—题:【递归改写】
- 用递归改写循环,得到组合
- 二叉树的递归遍历与非递归改写
- Qt学习2——对话框改写
- 节点合并、改写提交——rebase
- Effective Java——Item8:改写equals的时候总是要改写hashCode
- XML帮你轻松升级改写数据库——让你摆脱不停改写onUpgrade痛苦
- 递归 递归 递归 —深入浅出
- ACM题:晚上请开灯 (改写最小拦截系统) 别吐槽
- 第三章习题3-第三题=改写彩票例题
- BPEL实例运行[1]——改写源码
- 彩笔笔记2016/12/5——改写equals
- 改写Riched20
- 改写url
- 改写整数
- 改写方法
- 改写load_system
- 改写atoi
- (转)keil+stm32+JTAG利用swd方式进行printf输出
- 跳转
- Spark Streaming之运行架构
- Spring----AOP
- 有缘网分布式爬虫案例2
- 171110—题:【递归改写】
- 【云星数据---mesos实战系列003】:marathon实战007--marathon部署一个docker register
- 第14章 单元测试(控制器测试、路由测试、验证测试)
- 高精度的问题
- 处理Redis里的数据
- (转)keil+stm32+JTAG利用swd方式进行printf输出
- PHP 显示当前年月日的方法集合时间戳转化为时间格式
- HDU 2084 数塔
- ELK日志分析平台的搭建以及beats模式的搭建