20个减号

下面是一个AS程序,其想要输出20个减号,不过,粗心的程序员把代码写错了,你需要把下面的代码修改正确,不过,你只能增加或是修改其中的一个字符,请你给出三种答案。

var n:int=20;

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

    trace("-");

是面试题 不能真机测试哦~~

如果 写了错误答案也别编辑掉哦~

其它相关的变种题如下:

通过修改、增加一个字符,让其输出21个减号(目前已知1组解)

通过修改、增加一个字符,让其只输出1个减号(目前已知2组解)

以下原贴者的表述 仅代表他的意见hoho

我觉得,如果你能在10分钟内找出这三种方法,说明你真的很聪明,而且反应很快。当然,15分钟内也不赖。不过,你要是30分钟内找不到三种方法,当然, 不说明你笨了,最多就是你的反应还不够快。嘿嘿。就当是玩玩吧。

① 负负得正

var n:int=20;

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

    trace("-");

②利用for循环的第二个判断条件 i+n在i=-20的时候 i+n=0 条件为false 跳出循环

var n:int=20;

for(var i:int=0;i+n;i--)

    trace("-");

③利用n来判断

var n:int=20;

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

    trace("-");

通过修改、增加一个字符,让其输出21个减号(目前已知1组解)

var n:int=20;

for(var i:int=0;~i < n; i--)

    trace("-");

通过修改、增加一个字符,让其只输出1个减号(目前已知2组解)

var n:int=20;

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

    trace("-");

推荐阅读更多精彩内容