嗯,递归弄得我头好痛,不过只能忍住继续学习。

第一题:

编程题#1:单词翻转

来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)

注意: 总时间限制: 1000ms 内存限制: 65536kB

描述

输入一个句子(一行),将句子中的每一个单词翻转后输出。

输入

只有一行,为一个字符串,不超过500个字符。单词之间以空格隔开。所谓单词指的是所有不包含空格的连续的字符。

这道题请用cin.getline输入一行后再逐个单词递归处理。

输出

翻转每一个单词后的字符串,单词之间的空格需与原文一致。

样例输入

hello    world.

样例输出

olleh    .dlrow

直接贴上我的代码:

#include<iostream>
using namespace std;
int i = 0;
char input[501];
int recur() {char c = input[i];i++;if (c == ' ') {return 1;}if (c != ' '&&c != '\0') {recur();cout << c;}return 1;
}
int main() {cin.getline(input, 501);if (recur() == 1)//只有最外面一层的recur函数才会有返回值到这里,所以可以放心的打‘ ’cout << ' ';while (input[i] != '\0') {if (recur() == 1)//每次遇到空格,都会返回1,所以打印一个空格cout << ' ';}if (input[i] == '\0') {cout << endl;//最后输出换行符return 0;}
}

然后直接来下一题,角谷猜想:

编程题#2:角谷猜想

来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)

注意: 总时间限制: 1000ms 内存限制: 65536kB

描述

所谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3加1,如果是偶数,则除以2,得到的结果再按照上述规则重复处理,最终总能够得到1。如,假定初始整数为5,计算过程分别为16、8、4、2、1。

程序要求输入一个整数,将经过处理得到1的过程输出来。

输入

一个正整数

输出

从输入整数到1的步骤,每一步为一行,每一部中描述计算过程,假定输入为7,则输出为:

7*3+1=22

22/2=11

11*3+1=34

34/2=17

17*3+1=52

52/2=26

26/2=13

13*3+1=40

40/2=20

20/2=10

10/2=5

5*3+1=16

16/2=8

8/2=4

4/2=2

2/2=1

最后一行输出"End",如果输入为1,直接输出"End"

样例输入

5

样例输出

5*3+1=16
16/2=8
8/2=4
4/2=2
2/2=1
End
#include<iostream>
using namespace std;
int calculate(int a) {if (a == 1) {cout << "End";//到1为止return 0;}else {if (a % 2 == 0) {cout << a << '/' << 2 << '=' << a / 2 << endl;a = a / 2;calculate(a);return 0;}if (a % 2 == 1) {cout << a << "*3+1=" << a * 3 + 1 << endl;//我也不知道我是有懒,反正中间的*3+1就是打印出来看看a = a * 3 + 1;calculate(a);return 0;}}
}
int main() {int a;cin >> a;calculate(a);return 0;
}

[土狗之路]coursera 与 oj上的递归练习作业-- 单词翻转 角谷猜想相关推荐

  1. [土狗之路]coursera C语言进阶练习题 排队游戏

    直接上题: 编程题#3:排队游戏 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: 1000ms 内存限制: 65536kB ...

  2. [土狗之路]Coursera 北京大学C++ 魔兽世界:备战

    这道题目中间因为学校正课耽误了很久,结果时间到了 coursera 把我的课都给锁了,哎,申请了助学金,慢慢弄吧,之前心态不好,确实错在了细节,现在debug以及代码重构了,重新把代码po上来,然后开 ...

  3. [土狗之路]coursera 北京大学C++ 魔兽世界:装备

    上课加上乱七八糟的事情,好久没有更新博客,现在开始继续更新. 直接上题: 编程题#2: 魔兽世界之二:装备 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后 ...

  4. OJ每日一练——角谷猜想

    问题描述: 所谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3加1,如果是偶数,则除以2,得到的结果再按照上述规则重复处理,最终总能够得到1.如,假定初始整数为5,计算过程分别为16.8.4.2 ...

  5. 洛谷OJ上的A+B花(zhuang)式(bi)解法

    转眼间快到了8月,一想自己都毕业好久了,很怀念曾经在各大OJ上刷题的时光,今天无意在一个算法群里看到最近有个叫洛谷的oj网站貌似蛮火的,于是注册了一个下进去看一看,顺手打开了A+B problem,然 ...

  6. 【系统分析师之路】2008年上系统分析师上午综合知识真题

    [系统分析师之路]2008年上系统分析师上午综合知识真题 章节No 章节 总分数 获得分 考点 心得 3 企业信息化战略 7 4 企业应用集成,信息系统概述,企业应用系统开发,数据仓库数据挖掘,企业会 ...

  7. Coursera登不上的全套方法

    Coursera登不上的全套方法 序言 概述 登不上coursera的网站怎么办 看不了coursera的视频怎么办 最终在host中修改什么东西 序言 首先这篇文章是提供给那些在很多其他地方找方法, ...

  8. 【系统分析师之路】2018年上系统分析师综合知识真题

    [系统分析师之路]2018年上系统分析师综合知识真题 2018年上系统分析师综合知识历年真题 [系统分析师之路]2018年上系统分析师综合知识真题 [2018上系分真题第01题:绿色] 01.面向对象 ...

  9. 【系统分析师之路】2009年上系统分析师综合知识真题

    [系统分析师之路]2009年上系统分析师综合知识真题 2009年上系统分析师综合知识真题 [系统分析师之路]2009年上系统分析师综合知识真题 第三章 企业信息化战略 第五章 软件工程 第六章 需求工 ...

最新文章

  1. watch监听对象里面值的变化_Vue总结——computed和watch的用法和区别
  2. # Error in colSums(iris) : ‘x‘ must be numeric,# Error in rowSums(iris) : ‘x‘ must be numeric
  3. Jekyll博客统计访问量,阅读量工具总结--LeanCloud,不蒜子,Valine,Google Analytics
  4. 【深度学习】一文看尽深度学习各领域最新突破
  5. 新浪微博开放平台之OAuth2.0认证
  6. windows上的python能否在unix上使用_怎么用python在Windows系统下,生成UNIX格式文件
  7. CodeForces 297A Parity Game (脑补题)
  8. python LIST学习
  9. 送给测试行业年轻人们的一些建议
  10. 专业数字功放工作原理以及应用电路介绍
  11. 这就是为什么上帝和魔鬼都喜欢数学......
  12. 从网上自学老男孩python全栈的笔记-经历
  13. 腾讯云、声网、快手抢跑视频云
  14. 51单片机之中断的实现过程
  15. Hibernate的Disjunction和Conjunction
  16. 干货 | 一文读懂数据分析
  17. 用深度学习完成3D渲染任务的蹿红
  18. uniapp中开发模拟拼多多sku轮播选择器
  19. 美剧中50句经典俚语完美解析
  20. 数字藏品是怎么赋能的?

热门文章

  1. HBuilder的下载与使用(详细步骤)
  2. 【附源码】Python计算机毕业设计特大城市地铁站卫生防疫系统
  3. AtCoder 001 A BBQ Easy
  4. 【实战案例】python进行自动网上考试
  5. python安装第三方包_python 怎么安装第三方包
  6. 犯了这5个UI设计错误你的APP就得失败啦
  7. 原来,我连一个URL都写不对…
  8. 宽带运营商服务器未响应是什么意思,宽带拨号服务器无响应
  9. linux内存测试工具memtest,内存检测工具Memtest使用方法(图文教程)
  10. 云里黑白第一回——华硕mbr机械硬盘迁移到m.2固态,3秒开机