初学菜鸟,求教,我的递归哪儿出错了,总是没显示不出结果

作者:超级管理员 更新时间:2017-11-01 08:58:38 来源:未知 点击:15642
#include#includeusing namespace std;int check(int x){if (x > 6){cout << "input wro
#include<iostream>
#include<string>
using namespace std;
int check(int x)
{
if (x > 6)
{
cout << "input wrong num";
cout << "plz re-input the num:" << endl;
cin >> x;
check(x);
return x;
}
return x;
}

void main()
{
int n;
char xqj[7][20] = { "monday","tuesday","wednsday","thursday","friday","satday","sunday" };
cout << "plz input which day you want to choose:" << endl;
cin >> n;
check(n);
cout << xqj[n + 1][20] << endl;
}

Visual Studio 2015社区版正常编译,可以运行。。

仅供参考
cout << xqj[n+1] << endl;

“给定一个小点的输入,完整单步跟踪(同时按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史)一遍。”是理解递归函数工作原理的不二法门!
递归函数关注以下几个因素
·退出条件
·参数有哪些
·返回值是什么
·局部变量有哪些
·全局变量有哪些
·何时输出
·会不会导致堆栈溢出

输出这块儿有问题。不能这么写cout << xqj[n + 1][20] << endl;
另外,不太明白你这个check的返回值有啥意义?

#include<iostream>
#include<string>
using namespace std;
int check(int x)
{
if (x > 6 || x < 0)
{
cout << "input wrong num";
cout << "plz re-input the num:" << endl;
cin >> x;
check(x);
return x;
}
return x;
}

void main()
{
int n;
char xqj[7][20] = { "monday","tuesday","wednsday","thursday","friday","satday","sunday" };
cout << "plz input which day you want to choose:" << endl;
cin >> n;
int ret = check(n);
cout << xqj[ret] << endl;
}

汗,写错了。不能编辑。

#include<iostream>
#include<string>
using namespace std;
int check(int x)
{
if (x > 6 || x < 0)
{
cout << "input wrong num";
cout << "plz re-input the num:" << endl;
cin >> x;
return check(x);
}
return x;
}
 
void main()
{
int n;
char xqj[7][20] = { "monday","tuesday","wednsday","thursday","friday","satday","sunday" };
cout << "plz input which day you want to choose:" << endl;
cin >> n;
int ret = check(n);
cout << xqj[ret] << endl;
}

我想说。就算你的递归程序对,你在主函数不输出这是什么鬼。更何况不对。

新手菜鸟,所以会犯一些很基础的错,请谅解,现在自己琢磨出来了,谢谢各位不吝赐教。

推荐阅读

热门内容

麻烦帮看一下这些警告是什么意思

才学c语言,这是我的作业,输入3个字符,...

VS2010新建IT++工程时报错,求指

修复或重装VS2010没用,2013也试...

调用realloc函数后除了第一个其他全

#include #...

往byte数组拷贝二进制图像数据之后,数

运行到拷贝数据这段时这是读到的图像代码大...

C语言问题求助 求知道这种方式的人给解释

说清楚点吧  我这是常用算法程序集(C/...

已知两条直线和鼠标所在点,求经过鼠标所在

计算公式是有的,但是不同与我们手动计算用...

位数组问题 c和指针第5章第4道题

题目要求主函数是自定义的有两个问题:第一...

用Qt graphics view实现许

这个效果不错,关注。...

无GPU下win764+vs2013安装

在编译build_cpu_only中的M...

cppcms-1.0.5 windows

本帖最后由lovton于2017-10-...

最新内容

怎么找到一个数组前面的不重复的最小值!

/* 找最小的前3个不重复的数字*/#includeusin...

怎么通过数组标记找到前几个不重复的最小值?

/* 找最小的前3个不重复的数字*/#includeusin...

初学菜鸟,求教,我的递归哪儿出错了,总是没显示不出结果

#include#includeusing ...

想问一下这个代码为什么不正确,关于两个一元多项式链表相乘的问题,还有一个问题就是下面还有一个关于两个交集的问题我的代码应该怎么修改

Polynomial Multiply( Polynomial a, Polyn...

麻烦帮看一下这些警告是什么意思

才学c语言,这是我的作业,输入3个字符,输出他们组成的三位数直接用scanf就可...

怎么让 android EditText hint 不换行

两个问题:1. 当提示文本比较多的时候,hint文本会换行,虽然EditText...

vivo X20Plus评测:有了它iPad更没市场

续航:双引擎快充着实给力 五小时测试耗电剩余52%    而续航部分vivo X...

vivo X20Plus评测:有了它iPad更没市场

性能:性能十分稳定 控热较稳    vivo X20Plus采用高通晓龙660移...

vivo X20Plus评测:有了它iPad更没市场

系统:《王者荣耀》站场 力夺游戏掌机霸主   系统方面,vivo X20搭载了基...

vivo X20Plus评测:有了它iPad更没市场

屏幕:全面屏也具备高贵血统    vivo X20Plus的全面屏尺寸为6.43...

vivo X20Plus评测:有了它iPad更没市场

拍照:美的基础上 保留清晰不失自然    拍照方面,vivo X20Plus采用...

vivo X20Plus评测:有了它iPad更没市场

棚拍:数据不会说谎 色彩还原度表现优异    照片的本质离不开分辨解析力、色彩取...

13家手机联合打call 爆款好机友电视果

    当今,手机已然成为大多数消费者除生存物质条件以外的必要精神需求。除了拥有...

雷蛇首款手机将发 8GB内存4000mAh电池

    中关村在线消息:今天有消息称,游戏外设制造商Razer(雷蛇)透露将于1...

iPhone 8 Plus双11热卖 人像模式无敌

    中关村在线消息:iPhone 8 Plus作为iPhone 7 Plus...

不惧iPhoneX畅销 京东热门手机TOP10

    中关村在线市场资讯: 近日,iPhone X开启预购后,火爆程度简直和过...

vivo X20Plus评测:有了它iPad更没市场

    【中关村在线】vivoX20Plus评测:最近小米平板在其官方网站下架,...

京东手机11.11购物节 moto z惊爆价2499

    中关村在线消息:对于用户来说,手机独特的产品特点,不仅代表着一个人的品位...

科技6点半:三星Q3利润暴涨/一加5T曝光

    科技6点半,带您快速浏览今天手机行业发生的大事,每天18点30分准时送出...

swing 判断单选框问题

    鼓动鼓动 swing  用的 windowbuilder 来进行设计的,...