Java编程语言基础 课后作业

第一章初识Java
1.写出Java领域的相关技术
在计算机软件应用领域中,一种是安装和运行在本机上桌面程序,另一种是通过浏览器访问的面向lnternet的应用程序。
2.简述Java程序中注释的作用及类型
在java中常用的注释有两种:单行注释和多行注释 单行注释使用"//"开头,多行注释以"/*"开头"*/"结尾。
3.写出在MyEclipse中开发一个java程序步骤。
创造一个JAVA项目,创建并编写java源程序,运行java程序。
4java程序的结构
(1):编写程序框架  public class Helloworld{}
(2):编写main方法的框架 public static void main (String[] arge){}   //main()方法就是java程序入口  注意一个程序只能有一个main()
(3):编写代码  System.out.println("Helloworld!!!");

第二章变量,数据类型和运算符
3.小明左手,右手中分别拿两张纸牌:黑桃10和红桃8,现在交换手中的牌。用程序模拟这以过程:两个整数分别保存在两个变量中,将这两个变量的值互换,并输出互换后的结果。程序运行结果
public class Lizhaohon {
   public static void main(String[] args) {
   System.out.println("输出互换前手中的纸牌:");
      int leftCard =10;  //黑桃10
      int rightCard = 8;   //红桃8
      System.out.print("左手的纸牌:"+leftCard);
      System.out.println("右手的纸牌:"+rightCard);
     
      System.out.println("输出互换后手中的纸牌");
      int temp = leftCard; 
      leftCard = rightCard;  
      rightCard = temp; 
      System.out.print("左手的纸牌:"+leftCard);
      System.out.print("右手的纸牌:"+rightCard);
   }
}
4.小明要到美国旅游,可是哪里的温度是以华氏温度为单位记录的。他需要一个程序将华氏温度转换为摄氏温度,并以华氏温度和摄氏温度为单位分别显示该温度。编写程序实现此功能。要求:可以从控制台输入温度信息。
import java.util.Scanner;
   public class Lizhaohon{
   public static void main(String[] args){
    System.out.println("请输入华氏温度:");
    Scanner input = new Scanner(System.in);  //控制台
    double f =input.nextDouble();      //输入华氏温度   f=华氏温度
    double s =5/9.0*(f-32);  // s 表示第三个变量名
    int z = (int) s ;   //s浮点型强行转换z整型 z 表示摄氏温度
    System.out.println("华氏温度:"+f+"摄氏温度:"+z);
     
   }
}
5.银行提供了整存整取定期存蓄业务,其存期分为一年,两年,三年,五年,到期凭存单支取本息。
import java.util.Scanner;
public class Lizhaohon{
   public static void main(String[] args){
    Scanner input = new Scanner(System.in);  //控制台输入
    System.out.println("请输入本金:");
    double bj = input.nextInt();   //bj=本金
    double diyi =bj*0.0225*1+bj;   //本金*第一年年利率2.25*1年存期+本金
    double dier =bj*0.027*2+bj;     //本金*第一年年利率2.7*2年存期+本金
    double disan =bj*0.0324*3+bj;  //本金*第一年年利率3.24*3年存期+本金
    double diwu =bj*0.036*5+bj;   //本金*第一年年利率3.6*5年存期+本金
    System.out.println("本金为:"+bj);
    System.out.println("存取一年后的本息是:"+diyi);
    System.out.println("存款两年后的本息是:"+dier);
       System.out.println("存款三年后的本息是:"+disan);
    System.out.println("存款五年后的本息是:"+diwu);
   
   }
}

第三章选择结构
1.画出流程图并编程实现:如果用户名等于字符‘青’,并且密码等于数字123,则出入“欢迎你,青”;否则输出“对不起,你不是青”。
package com.bdqn.doum;
import java.util.Scanner;
public class Demo1 {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);   //控制台输入
  System.out.println("请输入用户名:");
  String mz = input.next();   //mz =名字
  System.out.println("请输入密码:");
  int mm = input.nextInt();  //mm=密码
  if (mz.equals("青") && mm == 123) {   //用if判断用户名是不是‘青’或者密码是否正确
   System.out.println("欢迎你,青!");
  } else {
   System.out.println("对不起,你不是青");
  }
 }
}
2.画出流程图并编程实现:如果年龄满7岁,或者年龄满5岁并且性别是‘男’,就可以搬动桌子。
package com.bdqn.doum;
import java.util.Scanner;
public class Demo2 {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);  //控制台输入
  System.out.println("请输年龄:");  
  int nl = input.nextInt();   //输入年龄  nl=年龄
  System.out.println("请输入你的性别:");
  String xb = input.next();   //输入性别  xb=性别
  if (nl >= 7 || nl >= 5 && xb.equals("男")) {    //用if判断年龄大于等于7 并且年龄大于等于5或者性别是男
   System.out.println("可以搬动桌子");
  } else {
   System.out.println("不可以搬动桌子");
  }
 }
}
3.画出流程图并编程实现:从键盘上输入三个整数,分别赋给整数变量a,b,c,然后将输入的整数按照从小到大的顺序放在变量a,b,c,中,并输出三个变量的值。
package com.bdqn.doum;
import java.util.Scanner;
public class Demo4 {
 public static void main(String[] args) {
  int temp = 0;   //设置第4个整数
  Scanner input = new Scanner(System.in);  //控制台输入
  System.out.println("请输入3个整数");
  int a = input.nextInt();  //输入a的整数
  int b = input.nextInt();  //输入b的整数
  int c = input.nextInt();  //输入c的整数
  if (a > b) {    //用if判断
   temp = a;   //输入a的值给第4个值
   a = b;   //输入b的值给a
   b = temp;  //第四个值给b
  }
  if (a > c) {  //用if判断
   temp = a;  //a的值给第4个值
   a = c;   //c的值给a的值
   c = temp;//第四个值给c
  }
  if (b > c) {   //用if判断
   temp = b;   //b的值给第四个
   b = c;      //c的值给b
   c = temp;   //第四个值给c
  }
  System.out.println("a的值:" + a + "b的值:" + b + "c的值:" + c);
 }
}
4.画出流程图并编程实现:从键盘上输入一个整数,判断是否被3或5整除。如果能,则输出“该整数是3或5的倍数.”;否则输出“该数不能被3或5中的任何一个数整除”。
package com.bdqn.doum;
import java.util.Scanner;
public class Demo6 {
 public static void main(String[] args) {
  int temp = 0;
  Scanner s = new Scanner(System.in);   //控制台输入
  System.out.println("输入一个数:");
  int a = s.nextInt();   //a来接收输入的数
  if ((a % 3 == 0) || (a % 5 == 0)) {   //用if结构判断a是否被3或者5整除
   System.out.println("该整数是3或5的倍数");
  } else
   System.out.println("该数不能被3或5中的任何一个数整除");
 }
}
5.画出流程图并编程实现:
刘珊珊同学参加了java课程的学习,她父亲和母亲承诺如下。
如果考试成绩==100分,父亲给她买一辆车。
如果考试成绩>=90分,母亲给她买一辆笔记本电脑。
如果考试成绩>=60分,母亲给她买一部手机。
如果考试成绩<60分,没有礼物。
package com.bdqn.doum;
import java.util.Scanner;
public class Demo3 {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);   //控制台输入
  System.out.println("请输入一个整数:");
  int nl = input.nextInt();   //输入成绩   nl=成绩
  if (nl == 100) {   //if结构判断成绩是否等于100
   System.out.println("父亲给她卖一辆汽车");
  } else if (nl >= 90) {   //if结构判断成绩是否大于等于90
   System.out.println("母亲给他买一部笔记本电脑");
  } else if (nl >= 60) {    //if结构判断成绩是否大于等于60
   System.out.println("母亲给她买一部手机");
  } else if (nl < 60) {    //if结构判断成绩是否小于60
   System.out.println("没有礼物");
  }
 }
}
6.画出流程图并编程实现:某人准备去海南旅游,现在要订购机票。机票的价格受季节旺季,淡季的影响,头等舱和经济舱价格也不同假设机票原价为5000元,4~10月为旺季,旺季头等舱打九折,经济舱打八折;淡季头等舱打五折,经济舱打四折。编写程序,使用if选择结构,根据出行月份和选择的舱位输出实际的机票价格。
package com.bdqn.doum;
import java.util.Scanner;
public class Demo5 {
 public static void main(String[] args) {
  int prime = 5000;    //于值本金 prime=本金
  Scanner input = new Scanner(System.in);   //从控制台输出
  System.out.println("请输入您出行的月份:");
  int youfen = input.nextInt();   //输入月份  youfen=月份
  System.out.println("请问您选择头等舱还是经济惨?头等舱输入1经济舱2:");
  int oneorTwo = input.nextInt();   //选择输入头等舱还是经济舱
  if (youfen > 0 && youfen < 13)    {  //判断淡季
   if (youfen > 3 && youfen < 11)   {   //判断旺季
    System.out.println("该月车票价格:头等舱" + prime * 0.9 + "元" + "经济舱" + prime * 0.8);
   } else
    System.out.println("该月车票价格如下:头等舱" + prime * 0.5 + "元" + "经济舱" + prime * 0.4);
  } else
   System.out.println("请输入正确的月份");
 }
}

第四章选择结构(二)
2.使用switch结构:为小明制定学习计划,星期一,星期三,星期五学习编程,星期二,星期四,星期六学习英语,星期日休息。
package com.bdqn.demo;
import java.util.Scanner;
public class OrderingMgr {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);   //控制台输入
  System.out.println("请输入星期几:");
  int xinqi =input.nextInt();   //输入星期几
  switch (xinqi) {
  case 1:
  case 3:
  case 5:
   System.out.println("学习编程");
   break;
  case 2:
  case 4:
  case 6:
   System.out.println("学习英语");
   break;
  default:
       System.out.println("休息");
   break;
  }
 }
 }
3.使用switch选择结构完成本书第三章作业简答题第5题的要求,实现父母对刘珊珊的承诺。
Scanner input = new Scanner(System.in);  //从控制台输入
  System.out.println("请输入刘珊珊的考试成绩:");
  int chengji =input.nextInt();   //输入成绩
  switch (chengji/10) {   //考试成绩/10
  case 10:
   System.out.println("父亲给她买一辆车");
   break;
  case 9:
   System.out.println("母亲给她买一部笔记本电脑");
   break;
  case 6:
   System.out.println("母亲给她买一部手机");
   break;
  default:   //输入成绩小于60分则没有奖励
   System.out.println("没有礼物");
   break;
4.使用switch选择结构完成本书第三章作业简答题第6题要求,根据月份和选择的舱位输出实际的票价价格。
Scanner input = new Scanner(System.in);   //控制台输入
  int benjin=5000;   //本金=5000
  System.out.println("请输入您出行月份:1~12");
  int yuefen = input.nextInt();   //控制台输入月份
  System.out.println("请输入您选择头等舱还是经济舱?头等舱输入1头等舱输入2");
  double cang =input.nextDouble();   //控制台选择输入1或2
  switch (yuefen*10) {   //输入的月份乘以10 
  case 40:
  case 50:
  case 60:
  case 70:
  case 80:
  case 90:
  case 100:
   if (cang==1) {   // 旺季头等舱
   double jiage =benjin*0.9;   //本金乘0.9等于票价
   System.out.println("您的机票价格为:"+jiage);
   }else if (cang==2) {    // 旺季经济舱
    double jiage=benjin*0.8;   //本金乘0.8等于票价
    System.out.println("您的机票价格为:"+jiage);
   }
   break;
  case 10:  
  case 20:
  case 30:
  case 110:
  case 120:
   if (cang==1) {   //淡季头等舱
    double jiage=benjin*0.5;   //本金乘0.5等于淡季头等舱价格
    System.out.println("您的机票价格为:"+jiage);
   }else {
    if (cang==2) {   //淡季经济舱
     double jiage=benjin*0.4;    //本金乘0.4等于淡季经济舱价格
     System.out.println("您的机票价格为:"+jiage);
    }
   }
   break;
  default:
   System.out.println("请输入正确数字");
   break;
5.编程实现迷你计算器功能,支持"+" "-" "*" "/",从控制台输入两个操作数,输出运算结果。
Scanner input = new Scanner(System.in);   //控制台输入
  System.out.println("请输入第一个操作数:");
  double num1 = input.nextDouble();   //输入第一个数
  System.out.println("请输入第二个操作数:");
  if (input.hasNextDouble() == true) {   //判断输入的数是否是正确
   double num2 = input.nextDouble();   //输入第二个数
   System.out.println("请输入:1加法,2减法,3乘法,4除法");
   int c = input.nextInt();   //输入1加法,2减法,3乘法,4除法
   switch (c) {
   case 1:
    System.out.println("计算结果:" + (num1 + num2));
    break;
   case 2:
    System.out.println("计算结果:" + (num1 - num2));
    break;
   case 3:
    System.out.println("计算结果:" + (num1 * num2));
    break;
   case 4:
    System.out.println("计算结果:" + (num1 / num2));
    break;
   default:
    System.out.println("无此选项!");
    break;
   }
  } else {
   System.out.println("请输入正确数字!");
  }
第五章循环结构(一)
2.使用while循环结构输出:100,95,90,85,...,5。
package com.bdqn.demo2;
public class Diwuzhang {
 public static void main(String[] args) {
  int a = 100;   //整数a等于100
  while (a > 0) {   //while判断a大于0
   System.out.println("输出:" + a);
   a -= 5;   //循环a自减5
  }
 }
}
3.使用do-while循环结构实现:计算1~50中是7的倍数的数值之和并输出。
使用"%"运算符判断7的倍数。
package com.bdqn.demo2;
public class Diwuzhang1 {
 public static void main(String[] args) {
  int sum = 0;  
  int i = 1;
  do {
   if (i % 7 == 0) {
    sum += i;
   }
   i++;
  } while (i < 50);
  System.out.println(sum);
 }
}
4.从键盘上接受一批整数,比较并输入其中的最大值和最小值,输入数字0是结束循环。
package com.bdqn.demo2;
import java.util.Scanner;
public class Diwuzhang2 {
 public static void main(String[] args) {
  int max = 0; // 最大值
  int min = 0; // 最小值
  int num = 0;   //设置第三个值
  Scanner input = new Scanner(System.in);   //控制台输入整数
  do {
   System.out.println("请输入一个整数(输入0结束)");
   int number = input.nextInt();
   if (num == 0) {
    max = number;
    min = number;
    num++;
   }
   if (number == 0) {
    break;
   }
   if (number > max) {
    max = number;
   }
   if (number < min) {
    min = number;
   }
  } while (true);
  System.out.println("最大值:" + max + "最小值" + min);
 }
}
5.从键盘上输入一位整数,当输入1~7时,显示下面对应的英文星期名称的缩写。
1:MON   2:TUE   3:WED   4:THU   5:FRI   6:SAT   7:SUM
package com.bdqn.demo2;
import java.util.Scanner;
public class Diwuzhang3 {
public static void main(String[] args) {
 Scanner input = new Scanner(System.in);
 System.out.println("请输入数字1-7(输入0结束):");
 int num =input.nextInt();
 switch (num) {
 case 1:
  System.out.println("今天是 MON");
  break;
 case 2:
  System.out.println("今天是 TUE");
  break;
 case 3:
  System.out.println("今天是 WED");
  break;
 case 4:
  System.out.println("今天是 THU");
  break;
 case 5:
  System.out.println("今天是 FRI");
  break;
 case 6:
  System.out.println("今天是 SAT");
  break;
 case 7:
  System.out.println("今天是 SUN");
  break;
 default:
  System.out.println("请输入正确数字!");
  break;
 }
}
}

第六章循环结构(二)
2.使用for循环结构实现:从键盘上接受从周一至周五每天的学习时间(以小时为单位),并计算每日平均学习时间。
package com.bdqn.demo2;
import java.util.Scanner;
public class Diliuzhang {
 public static void main(String[] args) {
  int xiaoshi;   //小时
  int sum = 0;   //时间之和
  double avg = 0.0;   //平均时间
  Scanner input=new Scanner(System.in);
  for (int i = 0; i < 5; i++) {
   System.out.println("请输入周"+(i+1)+"的学习时间");
   xiaoshi =input.nextInt();
   sum +=xiaoshi;   //计算学习时间之和
  }
  avg = (double)sum/5;
  System.out.println("周一至周五每日平均学习时间是:"+avg);
 }
}
3.鸡兔同笼是我国古代著名的趣题之一。大约在1500年前,《孙子兵法》中记载了这样一道题目:今有鸡兔同笼,上有三十五头,下有九十四足,问鸡兔各几只?试编写程序解决这个问题。
package com.bdqn.demo2;
public class Diliuzhang1 {
 public static void main(String[] args) {
  int chookNum = 0; // 鸡
  int rabbitNum = 0; // 兔子
  for (int i = 0; i <= 35; i++) {
   chookNum = i;
   rabbitNum = 35 - i;
   if (chookNum * 2 + rabbitNum * 4 == 94) {
    System.out.println(chookNum + "\t" + rabbitNum);
   }
  }
 }
}
4.开发一个标题为"FlipFlop"的游戏应用程序。它从1计数到100,遇到3的倍数就输出单词"Flip",遇到5的倍数就输出单词"Flop",遇到即为3的倍数又为5的倍数则输出单词"FlipFlop",其余情况下输出当前数字。
package com.bdqn.demo2;
public class Diliuzhang2 {
 public static void main(String[] args) {
  for (int i = 1; i <= 100; i++) {
   if (i % 3 == 0 && i % 5 == 0) {
    System.out.println("FlipFlop");
    continue;
   } else {
    if (i % 3 == 0) {
     System.err.println("Flip");
     continue;
    } else {
     if (i % 5 == 0) {
      System.out.println("Flop");
      continue;
     } else {
      System.out.println(i);
     }
    }
   }
  }
 }
}
5.在马克思手稿中有一道趣味题的数学问题:一共有30个人,可能包括男人,女人和小孩。他们在一家饭馆吃饭共花了50先令,其中每个男人花了3先令,每个女人花2先令,每个小孩花1先令。请问男人,女人和小孩各几人?
package com.bdqn.demo2;
public class diliuzhang3 {
 public static void main(String[] args) {
  int men;   //男人
  int wome;   //女人
  int kids;   //小孩
  for (men = 0; men <= 10; men++) {
   for (wome = 0; wome <= 30; wome++) {
    for (kids = 0; kids <= 30; kids++) {
     if (men + wome + kids == 30 && 3 * men + 2 * wome + kids == 50) {
      System.out.println("男人" + men + "女人" + wome + "小孩" + kids);
     }
    }
   }
  }
 }

第七章数组
2.首先依次输入五句话,然后将它逆序输出。
package com.bdqn.demo;
public class Demo6 { 
 // 在java中, 数组可以存储, 一组连续的, 数据类型相同的, 元素
 public static void main(String[] args) { 
  System.out.println("请输入5句话");
  String [] shuju = new String [] {"在java中","数组可以存储"," 一组连续的","数据类型相同的","元素"};
  for (int i = 0; i < shuju.length; i++) {
   System.out.println("第"+(i+1)+"句话:"+shuju[i]);
  }
  System.out.println("逆序输出5句话:");
  for (int i=shuju.length-1; i>=0; i--) {
   System.out.println(shuju[i]);
  }
 }
}
3.某百货商场当日消费积分最高的八名顾客,他们的积分分别是18,28,7,36,13,2,89,63。编写程序找出最低的积分及它在数组中的原始位置(下标)。
package com.bdqn.dierzhangjie;
public class Demo {  //第3题
public static void main(String[] args) {
 int points[] = new int[] {18,25,7,36,13,2,89,63};   //存储八名顾客积分
 int min = 0;     //存储最低积分
 int index = points.length;   //存储最低积分下标
 min = points[0];    //设置最低积分下标为0
    for (int i = 0; i < points.length; i++) {
        if(min>points[i]) {              
            min = points[i]; 
            index = i; 
        } 
    } 
    System.out.println("最低的积分为:"+min); 
    System.out.println("最低的积分的下标为:"+index); 
}
}
4.从键盘上输入10个整数,合法值为1,2或3,不是这三个数则为非法数字。试编程序统计每个整数和非法数字的个数。
package com.bdqn.demo;
import java.util.Scanner;
public class Demo7 { 
 public static void main(String[] args) {
  int [] nums = new int [10];  //创建数组长度为10,存储用户输入数字
  int [] count = new int [4];    //创建数组长度为4,存储三个合法数字和非数字的个数
  Scanner input = new Scanner(System.in);   //控制台输入数字
  System.out.println("请输入10个数"); 
  for (int i = 0; i < nums.length; i++) {
   nums[i]=input.nextInt();
   switch ( nums[i] ) {   //判断数字的值
   case 1:
    count[0]++;
    break;
   case 2:
    count[1]++;
    break;
   case 3:
    count[2]++;
    break;
   default:
    count[3]++;
    break;
   }
  }
  System.out.println("数字1的个数:"+count[0]);
  System.out.println("数字2的个数:"+count[1]);
  System.out.println("数字3的个数:"+count[2]);
  System.out.println("非法数字的个数:"+count[3]);
 }
}
5.假设有一个长度为5的数组,如下所示。
int [] array = new int [] {1,3,-1,5,-2};
现创建一个新数组 newArray[],要求新数组元素的存放顺序与原数组中的元素逆序,并且如果原数组中的元素值小于0,在新数组中按0存储。
package com.bdqn.demo;
public class Demo8 {  //第5题
 public static void main(String[] args) {
  int[] array = new int[] { 1, 3, -1, 5, -2 };
  int[] newArray = new int[5];
  System.out.println("原数组为:");
  for (int i = 0; i < array.length; i++) {
   System.out.print(array[i] + "  ");
  }
  System.out.print("逆序并处理后的数组为:");
  for (int i = array.length - 1; i >= 0; i++) {
   continue;
  }
 }
}
6.有一组英文歌曲,按照歌曲名称的字母顺序从"A"到"Z"顺序排列,保存在一个数组中。现在增加一首新歌,将它插入数组,并保持歌曲名称升序排列。
package com.bdqn.demo;
import java.util.Arrays;
import java.util.Scanner;
public class Demo9 {   //第6题
 public static void main(String[] args) {
  String [] musics = new String [] {"Island","Ocen","Pretty","Sun"};   //创建插入前的数组
  String [] music1 =Arrays.copyOf(musics,5);   //插入后的数组  
  int index =music1.length;
  System.out.println("插入前的数组为:");
  for (int i = 0; i < musics.length; i++) {
   System.out.print(musics[i]+"  ");
  }
  Scanner input = new Scanner(System.in);
  System.out.println("\n请输入歌曲名称:");   //输入歌曲名 :Ready
  String m = input.next();
  for (int i = 0; i < musics.length; i++) {
   if (musics[i].compareToIgnoreCase(m)>0) {
    index = i;
    break;
   }
  }
  for (int i = music1.length - 1;i>index;i--) {
   music1[index] = m;
  }
  System.out.println("\n插入后的数组为:");
  for (int i = 0; i < music1.length; i++) {
   System.out.print(music1[i]+"  ");
  }
 }
}

第八章循环结构进阶
2.编写程序,打印如下图案,要求该图案的行数由用户输入。
package com.bdqn.demo;
import java.util.Scanner;
public class Demo14 {
 public static void main(String[] args) {
  int rowe = 0;
  System.out.println("请输入行数:");
  Scanner input = new Scanner(System.in);
  rowe = input.nextInt();
  for (int i = 1; i <= rowe; i++) {
   for (int j = 1; j <= i; j++) {
    System.out.print(j + " ");
   }
   System.out.print("\n");
  }
 }
}
3.我国古代数学家张邱建在《算经》中出一道"百钱买百鸡"的问题,题意是这样的:5文钱可以买1只公鸡,3文钱可以买一只母鸡,一文钱可以买3只雏鸡。现在用100文钱买100只鸡,那么公鸡,母鸡,雏鸡各有多少只?
package com.bdqn.demo;
public class Demo15 {
 public static void main(String[] args) {
  for (int i = 0; i < 20; i++) {   //i整数等于公鸡
   for (int j = 0; j < 33; j++) {   //j整数等于母鸡
    for (int k = 0; k < 100; k++) {   //k整数等于雏鸡
     if ((5 * i + 3 * j + k / 3 == 100) && (i + j + k == 100)) {
      System.out.println("公鸡" + i + "母鸡" + j + "雏鸡" + k);
     }
    }
   }
  }
4.有三个班级各四名学员参赛,从控制台输入每个班级参赛学员的成绩,要求统计出三个班级所以参赛学员中成绩大于85分的学员的平均分。
package com.bdqn.demo;
import java.util.Scanner;
public class Demo16 {
 public static void main(String[] args) {
  int[] score = new int[4]; // 成绩数组
  int classnum = 3; // 班级数量
  double sum = 0.0; // 成绩总和
  double[] sumArray = new double[classnum]; // 平均成绩数组
  Scanner input = new Scanner(System.in);   //控制台输入
  for (int i = 0; i < classnum; i++) {
   sum = 0.0;
   System.out.println("请输入第" + (i + 1) + "个班级的成绩");
   for (int j = 0; j < score.length; j++) {
    System.out.println("第" + (j + 1) + "个学员的成绩:");
    score[j] = input.nextInt();
    sum += score[j];
   }
   sumArray[i] = sum / score.length;
   System.out.println("三个班级所以参赛学员中成绩大于85分的学员的平均分:" + sumArray[i] + "\n");
  }
 }
}
5.假设一个简单的在ATM上取款的过程如下:首先提示用户输入密码(password),最多只能输入三次,超过三次则提示用户"密码错误,请去卡",结束交易。如果用户密码正确,在提示用户输入金额(amount),ATM只能输出100元的纸币,一次取钱数要求最低0元,最高1000元。如果用户输入金额符合上述要求,则打印输出用户取的钱数,最后提示用户"交易完成,请取卡!",否则提示用户重新输入金额。假设用户密码是111111,
package com.bdqn.demo;
import java.util.Scanner;
public class Demo18 {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);
  int num = 0;
  for (int i = 0; i < 3; i++) {
   System.out.print("请输入密码:");
   int password = input.nextInt();
   if (password == 111111) {
    break;
   } else {
    num++;
    continue;
   }
  }
  if (num == 3) {
   System.out.println("输入次数超过三次,请取卡!");
  }
  if (num < 3) {
   System.out.print("请输入金额:");
   int money = input.nextInt();
   while (money % 100 != 0 || money < 0 || money > 1000) {
    System.out.print("输入金额不合法,请重新输入:");
    money = input.nextInt();
   }
   System.out.println("您取了" + money + "元");
   System.out.println("交易完成,请取卡!");
  }
 }
}
6.输入行数,打印菱形,要求如下:
从控制台输入菱形的高度(行数)。如果用户输入的行数合法(奇数),则打印出菱形,否则提示用户输入奇数。
package com.bdqn.demo;
import java.util.Scanner;
public class Demo17 {
 public static void main(String[] args) {
  Scanner input = new Scanner(System.in);
  System.out.print("请输入菱形的行数(奇数):");
  int row = input.nextInt();
  while (row % 2 == 0) {
   System.out.print("输入错误,请输入奇数:");
   row = input.nextInt();
  }
  int row1 = (row + 1) / 2;
  for (int i = 1; i <= row1; i++) {
   int row2 = row1 - i;
   int row3 = 2 * i - 1;
   for (int j = 0; j < row2; j++) {
    System.out.print(" ");
   }
   for (int j = 0; j < row3; j++) {
    System.out.print("*");
   }
   System.out.println("");
  }
  int row4 = (row - 1) / 2;
  for (int i = 1; i <= row4; i++) {
   int row5 = (row - 2 * i);
   for (int j = 1; j <= i; j++) {
    System.out.print(" ");
   }
   for (int j = row5; j > 0; j--) {
    System.out.print("*");
   }
   System.out.println("");
  }
 }
}

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页