老师如果答案错误想反复询问的话,我好像只会使用递归来实现。如果使用while循环,是不是得用do while语句呀?

老师如果答案错误想反复询问的话,我好像只会使用递归来实现。如果使用while循环,是不是得用do while语句呀?

    ​    ​    ​    ​var num = parseInt(Math.random() * 9) + 1;

console.log(num);//作弊先知道答案,哈哈

var input = prompt('请输入你猜的数字');

//数值比较

function compare(rd,pt){

if (pt < rd) {

alert('输入的数字小了');

var inputTwo = prompt('请输入你猜的数字');

compare(rd,inputTwo);

}else if(pt > rd) {

alert('输入的数字大了');

var inputTwo = prompt('请输入你猜的数字');

compare(rd,inputTwo);

}else {

alert('输入正确');

return;

}

}

compare(num,input);


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,因为return是用在函数里面的,而老师提供的代码中没有函数,所以按照同学的描述,要使用break,例如:

http://img1.sycdn.imooc.com//climg/6021f8ed09473ebd06900702.jpg

祝学习愉快~

好帮手慕言 2021-02-09 10:11:49

同学你好,使用同学提供的代码测试,效果实现的不错。另外:不用do while语句,使用while语句就可以实现效果,例如:

http://img1.sycdn.imooc.com//climg/6021ef3f095bed4107070659.jpg

祝学习愉快~

  • 提问者 帅得无心敲代码 #1
    老师我的思路是这样,可以给while循环的判断写成1吗?也就是true一直循环,到了相等,使用return 或者break终止点,这样是不是有问题呀?
    2021-02-09 10:24:23
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师