标题: 请问程序输出值为什么是0? [打印本页] 作者: 陈作亮 时间: 2012-3-16 23:04 标题: 请问程序输出值为什么是0? 请问以下程序输出值为什么是0,public class plus { public static void main(String args[]) {int sum=0; int n=100; do { n--; } while(n>0); {sum+=n;} System.out.println("the sum of the first 100 natural number is"+sum); }}作者: 魏群 时间: 2012-3-16 23:33
do
{
n--;
}while(n>0);
执行完 n就等于0了;
揣摩你的意思应该这么写:
do
{
sum+=n;
n--;
}while(n>0); 作者: 黑马肖凯骏 时间: 2012-3-16 23:36
public class plus {
public static void main(String args[])
{
int sum=0; int n=100;
do { n--;sum+=n; } while(n>0);
{
System.out.println("the sum of the first 100 natural number is"+sum); }}
你的sum+=n 不在循环体内,当然输出的0啦!作者: 四海为家 时间: 2012-3-16 23:36
public class plus{
public static void main(String args[]) {
int sum = 0;
int n = 100;
do {
n--;
}
while (n > 0);//当n==1时,还要去执行n--,之后,n==0,不满足条件,才执行while()后面的代码块。此时n==0了,所以结果是0
{
sum += n;
}
System.out.println("the sum of the first 100 natural number is" + sum);
}
}