面试题系列——有趣的for循环

本文通过几个具体的编程实例,探讨了不同循环结构及其条件判断对程序输出的影响,涉及变量操作、循环控制等内容,适合编程初学者及进阶者阅读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

例1:“火柴棒问题”,代码如下,要求只能增、改其中的一个字符,而可以输出20个"-"

var n:int = 20;

for (var i = 0; i < n; i--)

      trace("-");

解:

1)将条件表达式i<n,改成-i<n或i+n;

2)将增量i--,改成n--.

 

例2:

int i = 0;
for (i++; i++ < 10; i++)
    trace(++i);

解:3/6/9

 

例3:

int i = 0;
for (i++; i++ < 10; i++) ;
trace(++i);

解:13

 

例4:

var i:int =0;

var j:int =5;

for (;i = j;)

     trace("i="+(i++), "j="+(j++));

解:

i=5 j=5

i=4 j=4

i=3 j=3

i=2 j=2

i=1 j=1

 

例5:

var i:int =0;

for (trace("a"); i < 3; trace("b"))

{

      trace("c");

      i++;

}

解:a/c/b/c/b/c/b

 

ps:

1)初始值部分只执行一次;

2)条件表达式部分只认true or false,是赋值符号还是连等符号?是赋值符号的话,表达式的值为0的时候等价于false,就该跳出循环;

3)增量部分,是在循环体执行完了之执行;

4)for(;;)后面有没有分号?

5)i++和++i我就不说了,他们看起来像“我艹”和“艹我”.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值