读书人

取余有关问题

发布时间: 2012-08-09 15:59:22 作者: rapoo

取余问题
float a[]={1,2,3,4,5}
for(inti=1;i<=5; i++ )
{
if(i%2==0) \\ 第一这是取余  1%2会不会等于0.5;

continue; \\继续循环下一个
if(i%3==0)
break;    \\跳出循环后不再执行,就是当3%3就等于零的时候以后,就不再运行下一个?
console.writeline(i);
}
会得出什么结果
是不是等于1?

[解决办法]
首先 float a[]={1,2,3,4,5} 这么写好像语法上讲不通
应为float[] a={1,2,3,4,5};
按你写的意思的话,执行出来应该为1
1进入以后,不符合if(i%2==0)的条件,所以不执行continue语句, 也不符合if(i%3==0) 不执行break语句,执行console.writeline(i);

2进入以后,符合if(i%2==0)的条件,所以执行continue语句,跳出循环,不执行console.writeline(i);

3进入以后 不符合if(i%2==0)的条件,所以不执行continue语句, 符合if(i%3==0),执行break语句,中止循环。

要注意continue 和 break的区别,一个是跳出本次循环继续执行,一个是中止所有的循环。


[解决办法]
for(inti=1;i <=5; i++ )
{
if(i%2==0) \\ 第一这是取余  1%2会不会等于0.5;

continue; \\继续循环下一个
if(i%3==0)
break;    \\跳出循环后不再执行,就是当3%3就等于零的时候以后,就不再运行下一个?
console.writeline(i);
}

结果:
1

读书人网 >C#

热点推荐