一日晚,突发奇想,想到一道可能在面试中出现的题目(目前还没见过,自己想到的):
while(true){ i++;}请问如何不会陷入死循环,要求不能在大括号之间添加任何语句……
先不要看我后面的内容,你能想到几个答案?
当时把这个题目放到了自己qq签名上,并且借用腾讯的漂流瓶发了12个瓶子,后来签名上有两个同学回应了下,漂流瓶的回应全部没有参考价值,这也说明了有时候咨询问题对象选择的重要性。
自己能想到的答案:
1、使用外部嵌套,使该循环永远执行不了(这点大学一个宿舍同学也想到了);
if(1==2){while(true){ i++;}}
2、直接不用管它,因为i既然能够加加了,那么i一定是整型的变量了,整型的变量都有一个范围的,超过他的范围就会溢出异常了,这宿舍另一个同学也在qq上跟我说过一次;
不过经过我的简单测试,感觉这么让他执行到超出范围的话,不知道要等到什么时候呢,这个答案不怎么算正确的;
3、修改while条件,使循环不能执行:
while(true && false){ i++;}
4、第三个的解决办法中,由此我倒是想到了一个办法,让这个循环体不但不会死循环而且还会执行一定的循环次数:
例如:while(true && i < 5){ i++;}
5、继续,还可以把while条件中的true直接修改为false,这样更直接而且有效;
6、继续,或者干脆将while也修改一下,直接将while修改为if也是一个很好的解决办法,而且也很有效;
7、继续,其实这个题目并没有标明这个循环是在那种编译环境下执行的,起码就我所知的环境,就是这种写法在c++、java、c#、javascript下都是可以执行的,所以我们直接就可以把i定义为一个var i = true 然后跟着这个题目中的语句块while(true){ i++;};
而我们知道,js是解释执行的,所以不存在编译报错的问题,而这样写的话,就会使该js是执行时报错,直接不会出现死循环;
8、其他的所有修改过后直接编译就不通过的在此不作罗列……
while(true){ i++;}请问如何不会陷入死循环,要求不能在大括号之间添加任何语句……
你还能想到几个答案?
分享到:
相关推荐
i++和++i的区别,能够看出i++表达式使用的是i自增前的值,而++i使用的是i自增以后的值
js----while循环+do while循环+continue+break
编一个程序,用while循环语句来计算1+1/2+2/3+3/4+...+99/100之和。
通过死循环进行需要减肥的重量和年龄的录入以及数据合法性校验 通过while循环,实时计算跑步剩余时间、当前的跑步距离和消耗的卡路里 while循环 while循环基本语法 while 真值表达式: 语句块1 else: 语句块2 先执行...
编译原理课程设计++++do-while+循环语句的实现-武汉理工
int f(int x){ int s = 0; while(x++ >0)s+= f(x); return max(s,1);} 分析运行时间
python1.使用while循环实现输出2-3+4-5+6...+100 的和_一个倔强的女孩的博客-CSDN博客_python1+2+3+4+5+6+…+100代码.pdf
1+2+3...程序,用do while循环方法求整数的和运算,VB.net2008源代码
本资源内部包含了while循环的练习代码,以及我之前发的所有的练习代码
本文档介绍了如何使用MATLAB的while循环语句和数据录入的方法。我们提供了详细的源代码解析,包括使用while循环进行数据录入和计算一组数字的平均值的过程。此外,还给出了使用示例和调用函数的说明。希望本文档能够...
} 参考答案: i与j初始和为1,其后每循环一次,i和j中有且仅有一个值增1,即i与j的和增1。由于循 环条件为i+j,因此循环共执行n次。 语句频度=n。 for (i=1;i;i++) for (j=1;j<=i;j++) for (k=1;k;k++) x++; 参考...
javascript学习之循环结构(4)—— do while循环结构源码
C语言实现求1+2+3+……+100的和,要求分别用while、do while、for循环实现。.txt
理解和掌握循环结构是C语言编程的关键之一,其中while循环是最基本和常用的循环之一。在本文中,我们将详细讨论while循环,包括它的基本语法、工作原理、常见用途以及如何优化和展开while循环。通过深入了解while...
循环结构设计 -- do-while循环 ...sum=sum+i; i++; } while(i);//循环条件 System.out.println( “1+2+3+…+100=”+sum); } } 示例2:do-while循环 在一个图书系统的推荐图书列表中保存了50条信息,现在需要
循环结构程序设计作业 一 单项选择题(每题2分,共40分) 1 以下程序中,while循环的循环次数是 main() { int i=0; while(i) { if(i) continue; if(i= =5) break; i++; } …… } A)1 B)10 C)6 D)死循环,不能...
for、while、do-while循环的使用。包括循环结构的4个要素,一级介绍do-while循环结构
一个典型while循环实例,窗口台输出结果。
c语言之while循环PPT课件.pptx