JAVA基础知识: 流程控制习题答案
2015-03-23 09:19
471 查看
第一题:
有 36 人 36 块板砖,男人每人般 4 块,女人每人搬 3 块,小孩每 2 人搬 1 块。36 人都搬了一次,把砖刚好搬晚,问:几男几女的几个小孩?
第二题: 打印 1-100 的素数 (只能被 1 和他本身整除的数)
素数 : 只能被 1 和他本身整除的数.
第三题: 写个猜数字的小游戏:
第四题:
出租车计费标准为:3 公里以内 10 元,3 公里以后每 1 公里加 2 元,每等待 5 分钟加 2 元。超过 15 公里,每公里加 3 元,打印出钱数。
第五题:
一电信公司的市内通话费计算标准如下:3 分钟 02 元,3 分钟后每增加一分钟加 0.1元,不足一分钟的按照一分钟计算。要求编写程序。给定一个通话时间(秒)。计算相应的费用。
第六题:
给定 3 个数,a b c ,输出最大数。
第七题:
用 scanner 输入一个数字,然后判断下数字大小,如果大于 0 输出为正数等于 0 输出为 0 否则输出为负数。
第八题:
用 scanner 输入一个分数,来判断分数等级:
>=90 打印 优秀
80-90 打印 良好
70-80 打印 中等
60-70 打印 及格
<60 打印 不及格
第九题:
循环打印 100 以内的数。
第十题:
循环打印 100 以内的所有奇数
第十一题:
用 scanner 输入一个数字,计算从 1 到这个数字的累加并打印出来。
第十二题:
打印
*
* *
* * *
* * * *
* * * * *
第十三题:
打印
*
***
*****
*******
*********
第十四题:
打印乘法表
第十五题:
打印乘法表:遇到 12 的倍数不显示,遇到 28 的倍数,本行终止。
第十六题:
打印 0-50 之间不是 5 的倍数和 7 的倍数
第十七题:
学习打印 1-100 的数字,遇到 7 的倍数或包含 7 的数字,不打印
有 36 人 36 块板砖,男人每人般 4 块,女人每人搬 3 块,小孩每 2 人搬 1 块。36 人都搬了一次,把砖刚好搬晚,问:几男几女的几个小孩?
int nan; int nv; for (nan = 1; nan < 9; nan++) { for (nv = 1; nv < 11; nv++) { if ((nan * 4 + nv * 3 + (36 - nan - nv) / 2) == 36 && ((36 - nan - nv) % 2 == 0)) { System.out.println(nv + "男"); System.out.println(nan + "女"); System.out.println(36 - nan - nv); } } }
第二题: 打印 1-100 的素数 (只能被 1 和他本身整除的数)
素数 : 只能被 1 和他本身整除的数.
for (int i = 2; i <= 100; i++) { boolean flag = true; for (int j = 2; j < i; j++) { if (i % j == 0) { flag = false; break; } } if (flag) { System.out.println(" " + i); } }
第三题: 写个猜数字的小游戏:
生成一个 1-100 的随即数,让用户输入数字猜,如果猜错了 提示猜大了 还是猜小了,然后用户继续输入信数字猜,猜对了退出!
for (;;) { Random rd = new Random(); int re = rd.nextInt(100); int ree = rd.nextInt(100); if (ree == re) { System.out.println("你猜对了 真是牛B到极点了~!" + '\n' + re + '\n' + ree); break; } else if (ree > re) { System.out.println("你猜大了!" + re); } else { System.out.println("你猜小了!" + re); } }
第四题:
出租车计费标准为:3 公里以内 10 元,3 公里以后每 1 公里加 2 元,每等待 5 分钟加 2 元。超过 15 公里,每公里加 3 元,打印出钱数。
System.out.println("请输入等待时间和公里数 ~!"); Scanner sc = new Scanner(System.in); int tim = sc.nextInt(); int juli = sc.nextInt(); int fee = 0; int fee1 = 0; if (tim / 5 != 0) { fee1 = tim / 5 * 2; } if (juli <= 3) fee = fee1 + 10; else if (juli > 3 && juli <= 15) fee = fee1 + 10 + (juli - 3) * 2; else fee = fee1 + 10 + (juli - 15) * 3 + 12 * 2; System.out.println(fee);
第五题:
一电信公司的市内通话费计算标准如下:3 分钟 02 元,3 分钟后每增加一分钟加 0.1元,不足一分钟的按照一分钟计算。要求编写程序。给定一个通话时间(秒)。计算相应的费用。
System.out.println("Please Input Time ~!"); Scanner sc = new Scanner(System.in); int mm = sc.nextInt(); double fee; if (mm == 0) fee = 0; if (mm / 180 == 0) fee = 0.2; else if ((mm - 180) % 60 > 0) fee = (mm - 180) / 60 * 0.1 + 0.3; else fee = (mm - 180) / 60 * 0.1 + 0.2; System.out.println(fee);
第六题:
给定 3 个数,a b c ,输出最大数。
System.out.println("请输入3个数字 !"); Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); int max; if (a > b) max = a; else max = b; if (max < c) max = c; System.out.println(max);
第七题:
用 scanner 输入一个数字,然后判断下数字大小,如果大于 0 输出为正数等于 0 输出为 0 否则输出为负数。
System.out.println("请输 入 一 个 数 字 !"); Scanner sc = new Scanner(System.in); int cc = sc.nextInt(); if (cc > 0) System.out.println("正数"); else if (cc == 0) System.out.println("零"); else System.out.println("负数");
第八题:
用 scanner 输入一个分数,来判断分数等级:
>=90 打印 优秀
80-90 打印 良好
70-80 打印 中等
60-70 打印 及格
<60 打印 不及格
System.out.println("请输入成绩分数 ~!"); Scanner sc = new Scanner(System.in); int mm = sc.nextInt(); if (mm >= 90) { System.out.println("优秀"); } else if (mm >= 80) { System.out.println("良好"); } else if (mm >= 70) { System.out.println("中等"); } else if (mm >= 60) { System.out.println("及格"); } else { System.out.println("不及格"); }
第九题:
循环打印 100 以内的数。
for (int i = 1; i <= 100; i++) { System.out.println(i); }
第十题:
循环打印 100 以内的所有奇数
for (int i = 99; i >= 1; i = i - 2) { System.out.println(i); } for (int i = 1; i <= 100; i = i + 2) { System.out.println(i); } for (int i = 0; i <= 100; i++) { if (i % 2 != 0) System.out.println(i); } for (int i = 100; i >= 0; i--) { if (i % 2 != 0) System.out.println(i); } for (int i = 0; i < 50; i++) { System.out.println(2 * i + 1); }
第十一题:
用 scanner 输入一个数字,计算从 1 到这个数字的累加并打印出来。
System.out.println("请输入数 ~!"); Scanner sc = new Scanner(System.in); int tim = sc.nextInt(); int i; int sum = 0; for (i = 1; i <= tim; i++) { if (i % 2 == 1) { sum = sum + i; } }//只做奇数想加 System.out.println(sum);
第十二题:
打印
*
* *
* * *
* * * *
* * * * *
for (int i = 0; i <= 5; i++) { for (int j = 0; j <= i; j++) { System.out.print("*"); } System.out.print("\n"); }
第十三题:
打印
*
***
*****
*******
*********
for (int i = 0; i < 10; i = i + 2) { for (int j = 0; j <= i; j++) { System.out.print("*"); } System.out.print("\n"); } ---------- for (int h = 0; h < 5; h++) { for (int y = 0; y <= 2 * h; y++) { System.out.print("*"); } System.out.print("\n"); }
第十四题:
打印乘法表
for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { System.out.print(" " + i * j + " "); } System.out.println(""); }
第十五题:
打印乘法表:遇到 12 的倍数不显示,遇到 28 的倍数,本行终止。
for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { if (i * j % 28 == 0) break; if (i * j % 12 == 0) { System.out.print(" "); continue; } else System.out.print(" " + i * j + " "); } System.out.println(""); }
第十六题:
打印 0-50 之间不是 5 的倍数和 7 的倍数
for (int i = 0; i < 50; i++) { if (i % 5 == 0 | i % 7 == 0) continue; //终止本次循环,继续下此 System.out.println(i); }
第十七题:
学习打印 1-100 的数字,遇到 7 的倍数或包含 7 的数字,不打印
for (int i = 0; i <= 100; i++) { if (i % 7 == 0) continue; if (i % 10 == 7) continue; if (i / 7 == 10 | i / 7 == 11) continue; System.out.println(i); }
相关文章推荐
- javaSE_8系列博客——Java语言的特性(二)--高级语言的基础知识(7)-- 流程控制语句
- JAVA基础知识: 流程控制
- 黑马程序员-Java基础知识预备之Java流程控制与数组
- Java基础知识02-流程控制if-else
- Java基础知识:流程控制
- java基础知识3——流程控制语句
- JAVA基础知识学习笔记(流程控制、数组)
- 从零开始学习Java——基础知识之流程控制(第三天)
- Java基础知识(数据类型、标识符、变量、运算符和流程控制语句)
- Java基础知识学习之路-05-第四章-流程控制与数组
- java基础知识回顾----流程控制
- Java基础知识(数据类型、标识符、变量、运算符和流程控制语句)
- Java基础知识02-流程控制结构
- Java基础知识02-流程控制-for
- JAVA基础知识思维导图:unit01_开发环境,变量,基本类型及转换,数学运算,流程控制,数组
- 黑马程序员--------java基础知识 程序流程控制
- java基础知识随笔--流程控制
- Java基础知识 第三章 流程控制
- Java基础知识02-流程控制-do while
- java 基础知识四 流程控制