| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦   
共有 322 人关注过本帖
标题:讨教个简单的问题,大家帮忙看下
收藏  订阅  推荐  打印
hjxgb2000
Rank: 1
等级:新手上路
帖子:13
积分:268
注册:2008-7-22
讨教个简单的问题,大家帮忙看下

题目是:求平均数,用户循环输入任意个非0的数,输入0退出循环,系统计算并显示这些数的平均值。

我写的是
import java.util.*;
public class avg {
    public static void main(String[] args) {
        boolean con;
        int i=0;
        double num;
        double sum=0;
        double avg;
        do {
            Scanner input=new Scanner(System.in);
            System.out.print("请输入数字:");
            num=input.nextInt();
                           con=num==0;
                           sum=sum+num;
                           i++;
        }while(!con);
        avg=sum/i;
        System.out.println("\n共输入"+i+"个数字,和是"+sum+",平均数是"+avg);
    }
}
不知道哪里有问题呢
我是新手,大家帮忙改下
2008-8-2 16:03
njsoso
Rank: 1
等级:新手上路
帖子:30
积分:418
注册:2008-8-1

那个0应该只是一个开关数字吧?
2008-8-2 17:12
njsoso
Rank: 1
等级:新手上路
帖子:30
积分:418
注册:2008-8-1

import java.util.*;
public class avg {
    public static void main(String[] args) {
        boolean con;
        int i=0;
        double num;
        double sum=0;
        double avg;
        do {
            Scanner input=new Scanner(System.in);
            System.out.print("请输入数字:");
            num=input.nextInt();
                           //con=num==0;
                           sum=sum+num;
            if(con=num==0)
            {
                System.out.println("你输入的有效数字是:"+i+"个");
            }
            i++;
        }while(!con);
        avg=sum/(i-1);
        System.out.println("和是"+sum+"\n"+"平均数是"+avg);
    }
}
2008-8-2 17:24
meteor57
Rank: 3Rank: 3
来自:银河系
等级:中级会员
帖子:269
积分:3438
注册:2007-9-29

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class avg
{
    public static void main(String[] args) throws IOException
    {
        BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
        String str;
        int i = 0;
        double num;
        double sum = 0;
        double avg;        
        do
        {
            System.out.print("请输入数字:");            
            str=buf.readLine();                        
            try
            {
                num = Double.parseDouble(str);
            }
            catch(NumberFormatException  e)//捕获异常时跳出
            {
                break;
            }            
            sum += num;
            i++;
        } while (true);
        avg = sum / i;
        System.out.println("\n共输入" + i + "个数字,和是" + sum + ",平均数是" + avg);
    }
}
2008-8-2 18:28
hjxgb2000
Rank: 1
等级:新手上路
帖子:13
积分:268
注册:2008-7-22

哦,明白了
2008-8-2 18:34
hjxgb2000
Rank: 1
等级:新手上路
帖子:13
积分:268
注册:2008-7-22

4楼的好些语句我都不懂,应该是很没学到吧!!
2008-8-2 18:39
meteor57
Rank: 3Rank: 3
来自:银河系
等级:中级会员
帖子:269
积分:3438
注册:2007-9-29

引用:
hjxgb2000 在 2008-8-2 18:39 的发言:

4楼的好些语句我都不懂,应该是很没学到吧!!
遇到不懂的类,多查查API帮助,看多了自然就懂了的.呵呵~~~
2008-8-2 19:15
hjxgb2000
Rank: 1
等级:新手上路
帖子:13
积分:268
注册:2008-7-22

API帮助是不是要另外装啊,在网上下吗
2008-8-3 11:24
meteor57
Rank: 3Rank: 3
来自:银河系
等级:中级会员
帖子:269
积分:3438
注册:2007-9-29

是文档,在网上下载得了.
2008-8-3 19:24
共有 321 人关注过本帖
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.051320 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved