java吧 关注:1,256,015贴子:12,745,904

回复:【入驻JAVA吧 记录学习点滴】

只看楼主收藏回复

【程序5】
题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下
的用C表示。
1.程序分析:(a>b)?a:b这是条件运算符的基本例子。
好吧 第五个题目


49楼2011-12-10 13:50
回复
    import java.util.Scanner;
    public class Test5 {
    public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.println("请输入学员的个数:");
    int number = input.nextInt();
    double[] arr = new double[number];
    for (int i = 0; i < number; i++) {
    System.out.println("请输入第" + (i + 1) + "个学员的成绩:");
    arr[i] = input.nextDouble();
    }
    for(int i = 0; i < number; i++){
    String chengji = arr[i] >= 90 ? "A" : "B";
    System.out.println("第" + (i + 1) + "个学员的成绩为:" + chengji);
    }
    }
    }
    


    50楼2011-12-10 14:01
    回复
      OK 简单的实现了下 下一个~~~
      【程序6】
      题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
      1.程序分析:利用辗除法。
      我得百度下什么叫 辗除法 ?


      51楼2011-12-10 14:02
      回复
        设两数为a、b(b<a),求它们最大公约数(a、b)的步骤如下:用b除a,得a=bq......r 1(0≤r)。若r1=0,则(a,b)=b;若r1≠0,则再用r1除b,得b=r1q......r2 (0≤r2).若r2=0,则(a,b)=r1,若r2≠0,则继续用r2除r1,……如此下去,直到能整除为止。其最后一个非零余数即为(a,b)。
        这就是传说中的辗转相除法, 又名欧几里德算法(Euclidean algorithm)乃求两个正整数之最大公因子的算法。它是已知最古老的算法, 其可追溯至3000年前。它首次出现于欧几里德的《几何原本》(第VII卷,命题i和ii)中,而在中国则可以追溯至东汉出现的《九章算术》。它并不需要把二数作质因子分解


        52楼2011-12-10 14:04
        回复
          a和b的最小公倍数 = a和b乘积除以最大公约数
          嗯 那就利用递归了求出最大公约数咯
          package com.baqn.jingdian50;
          import java.util.Scanner;
          public class Test6 {
          //方法get***() ***:最大公约数greatest common divisor
          public static int get***(int a, int b) {
          int temp = 0;
          if(a < b){
          temp = a;
          a = b;
          b = temp;
          }
          int r = a % b;
          if(r == 0){
          return b;
          }
          else {
          return get***(b, r);
          }
          }
          //方法getLCM() LCM 最小公倍数 lowest common multiple
          public static int getLCM(int a, int b){
          int lcm = (a*b) / Test6.get***(a, b);
          return lcm;
          }
          public static void main(String[] args) {
          Scanner input = new Scanner(System.in);
          System.out.println("请输入第一个整数a:");
          int a = input.nextInt();
          System.out.println("请输入第二个整数b:");
          int b = input.nextInt();
          Test6.get***(a, b);
          System.out.println("整数" + a + "和" + b + "的最大公约数为:" + Test6.get***(a, b));
          System.out.println("整数" + a + "和" + b + "的最小公倍数为:" + Test6.getLCM(a, b));
          }
          }
          


          53楼2011-12-10 14:55
          回复
            【程序7】
            题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
            1.程序分析:利用while语句,条件为输入的字符不为'\n'.
            这个题好多书上都作为例题 蛋疼的是 我都没仔细研究过


            54楼2011-12-10 14:57
            回复
              我蛋疼 get***();***也和谐????度娘V5!!


              55楼2011-12-10 15:01
              回复
                上面那个是方法get ***();天知道度娘为什么和谐成*号


                56楼2011-12-10 15:03
                回复
                  NANI??????就是最大公约数英文单词的缩写 三个单词的首字母大写 我 去 为什么显示不出来 难道有~~~~~~~~~~不和谐的因素?


                  57楼2011-12-10 15:04
                  回复
                    我也来做着玩~
                    public class SuShu {
                    public static void main(String[] args) {
                    int count = 0;
                    for (int number = 101; number <= 200; number++) {
                    boolean isNotSuShu = false;
                    for (int i = 2; i < number; i++) {
                    if (number % i == 0) {
                    isNotSuShu = true;
                    break;
                    }
                    }
                    if (!isNotSuShu) {
                    count++;
                    System.out.print(number + " ");
                    }
                    }
                    System.out.println();
                    System.out.println("101到200间有" + count + "个素数。");
                    }
                    }


                    58楼2011-12-10 15:30
                    回复
                      某党也是那个缩写啊!!
                      ps无视58楼。某sb忘记翻页了,看着第一页的内容在那里做傻事……


                      59楼2011-12-10 15:36
                      回复
                        import java.util.*;
                        public class Test7 {
                        public static void main(String[] args) {
                        int word = 0;
                        int number = 0;
                        int space = 0;
                        int others = 0;
                        Scanner input = new Scanner(System.in);
                        System.out.println("Enter some characters:");
                        String s = input.nextLine();
                        char[] n = s.toCharArray();
                        for(int i=0;i<n.length;i++){
                        if(Character.isLetter(n[i])){
                        //判断是否字母
                        word++;
                        }
                        else if(Character.isDigit(n[i])){
                        //判断是否数字
                        number++;
                        }
                        else if(Character.isSpaceChar(n[i])){
                        //判断是否空格键
                        space++;
                        }
                        else{
                        //以上都不是则认为是其他字符
                        others++;
                        }
                        }
                        System.out.println("字母个数:"+word);
                        System.out.println("数字个数:"+number);
                        System.out.println("空格个数:"+space);
                        System.out.println("其他字符个数:"+others);
                        }
                        }


                        60楼2011-12-10 16:01
                        回复
                          嘿嘿 终于有人陪了


                          61楼2011-12-10 16:02
                          回复
                            哦 某党确实V5 我 擦


                            62楼2011-12-10 16:03
                            回复
                              char类型确实蛋疼 用引用类型吧又不能比较 也不能把String转换为char 搞半天诶~~


                              63楼2011-12-10 16:05
                              回复