Java|Java基础语法练习题

循环语句(for、while、do-while、break、continue、循环标号) 第1题

  1. 题干:
在main方法中分别打印下列四个图形
图形1: 图形2:
**
****
******
********

  1. 示例
程序执行出现如下结果

  1. 参考答案





第2题
  1. 题干:
在main方法中打印100-999之间所有的水仙花数,


所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。


  1. 示例
程序执行出现如下结果

  1. 参考答案





第3题
  1. 题干:
一个球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?


  1. 示例
程序执行出现如下结果

  1. 参考答案











第4题
  1. 题干:
键盘输入一个数你,计算数字n阶乘 n! = n*n-1*n-2……
注:使用while完成

  1. 示例
程序执行出现如下结果

  1. 参考答案



第5题
  1. 题干:
使用for循环,在控制台打印出九九乘法表。


  1. 示例
程序执行出现如下结果

  1. 参考答案





第6题
  1. 题干:
获取一个2-500之间(包含2和500)的随机数n,求0-n之间(包含0和n)的偶数和,并打印到控制台上;
  1. 示例
程序执行出现如下结果

  1. 参考答案











第7题
  1. 题干:
一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?
  1. 示例
程序执行出现如下结果

  1. 参考答案






一维数组
第8题
  1. 题干:
int[] arr = {1,1,2,2,3,4,5,4,3,2,1}, 打印出数字 2现的次数。
  1. 示例
程序执行出现如下结果

  1. 参考答案






第9题
  1. 题干:
在数组中 查询数据第二次55出现的位置,打印第二次出现的索引 (索引指从0开始)
[11, 32,55, 47,55, 79,23]
示例
程序执行出现如下结果

  1. 参考答案





第10题
  1. 题干:
定义一个长度为5的int型数组,之后生成5个随机数存入数组,随机数范围为10到100(包含10和100),遍历数组,将数组中小于50的元素替换成0,之后打印修改后的数组
  1. 示例
程序执行出现如下结果

  1. 参考答案




第11题
  1. 题干:
将下面的数组元素前后互换
[11, 32,55, 47,79,23]
置换后的数组元素为:
[23, 79, 47, 55, 32, 11]
  1. 示例
程序执行出现如下结果

  1. 参考答案





第12题
  1. 题干:
获取指定数组中元素值为偶数并且小于指定偶数的元素个数,要求如下:
定义main方法,方法内完成:
1.定义一个int数组arr
2.键盘录入5个整数,并存入数组arr中,输入前提示当前输入的是第几个整数
3.键盘录入1个整数num,
4.获取数组arr中元素值小于整数num并且元素值为偶数的元素个数
5.在控制台上打印输出
  1. 示例
程序执行出现如下结果

  1. 参考答案
public class demo03 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int[] arr =new int[5];
for(int i=0; ilength; i++){
System.out.println("请输入第"+(i+1)+"个数:");
int inNum = sc.nextInt();
arr[i]=inNum;
}
System.out.println("请输入第需要比较的数:");
int num = sc.nextInt();
int count = getInfo(arr,num);
System.out.println("小于"+num+"的偶数有:"+count+"个");

}
public static int getInfo(int[] arr ,int num){
int count=0;
for(int i=0; ilength; i++){
if(arr[i]count++;
}
}
return count;
}
}



第13题
  1. 题干:
使用数组完成,要求如下:
某个公司采用公用电话传递数据信息,数据是小于8位的整数,为了确保安全,在传递过程中需要加密,加密规则如下:
ü首先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字,
ü最后将第一位和最后一位数字交换。 请任意给定一个小于8位的整数
ü然后,把加密后的结果在控制台打印出来
定义main方法,方法内完成:
1.定义一个int类型的整数(值为:123456)
2.把此整数转换为数组存储
3.按照加密规则计算后,把加密后的结果在控制台打印输出
  1. 示例
程序执行出现如下结果

二维数组



第14题
  1. 题干:
现有二维数组, int[][] array={{1,2,8,9},
{2,4,9,12},
{4,7,10,13},
{6,8,11,15}};
计算二维数组中所有元素的和
  1. 示例
程序执行出现如下结果

  1. 参考答案






第15题
  1. 题干:
现有二维数组, int[][] array={{1,2,8,9},
{2,4,9,12},
{4,7,10,13},
{6,8,11,15}};
求二维数组中所有元素的最大值。
  1. 示例
程序执行出现如下结果

  1. 参考答案



第16题
  1. 题干:

1、获取李四的数学成绩: arr[1][0]
2、使用二维数组遍历展示所有同学的所有成绩
3、计算数学平均成绩:(arr[0][0]+ arr[1][0]+ arr[2][0]+ arr[3][0]+ arr[4][0])/5
  1. 示例
程序执行出现如下结果

  1. 参考答案















方法


第17题
  1. 题干:
统计直角三角形个数
学生自己新建类TestThree.java
将如下代码复制到TestThree中
public static void main(String[] args){
//二维数组中保存了5个三角形的边长数据
int[][] arrs = {
{3,5,4},
{10,6,8},
{15,9,12},
{12,18,20},
{12,13,5}
};
//统计二维数组中有多少个直角三角形
int sum = sumTriangle(arrs);
System.out.println("文件中一共保存了"+sum+"个直角三角形");
}

学生在类中自己实现sumTriangle方法,完成直角三角形数量统计。不允许修改main方法中的代码

释义:
二维数组arrs中有如下5行数据表示5个三角形,
每一行数据代表一个三角形的三条边长,
直角三角形边长公式c2=a2+b2
举例:3,5,4 表示三角形三条边分别是 3 、5 、4 符合 52=32+42,则这是一个直角三角形。
12,18,20表示三角形三条边分别是12、18、20,122+182!= 202,则不是一个直角三角形。

  1. 示例
程序执行出现如下结果

  1. 参考答案










第18题
  1. 题干:
定义方法判定直角三角形, isRightTriangle,参数为int类型的三角形的三条边,返回值为布尔值,是直角三角形为true,否则false
代码实现,效果如图所示:

  1. 示例
程序执行出现如下结果

  1. 参考答案








第19题
  1. 题干:
定义void printArr(int[] arr)静态方法,功能:按顺序打印arr数组的所有元素。要求打印格式如下:[11,32,55, 47,79,23]。并在main方法中完成printArr方法的调用。

  1. 示例
程序执行出现如下结果

  1. 参考答案







第20题
  1. 题干:
语文
数学
英文
第1名同学
98
58
87
第2名同学
97
53
39
第3名同学
81
88
79
第4名同学
70
64
83

1.在main方法中定义int[][] score(该数组4行3列)数组,并把全班的成绩存放到score数组中。(5分)
2.定义void printScore(int[][] score)方法,该方法用于控制台打印全班成绩,并在main方法中调用printScore方法。(5分)
3. (10分)定义int[] getAvgs(int[][] score)方法,该方法计算每名同学的平均分并存放到一个新的一维数组中返回(4名同学就有4个平均分)。然后在main方法中调用本方法,并在main方法中打印每名同学的平均分,打印格式:
第一位学生平均分:81
第二位学生平均分:63
第三位学生平均分:82
第三位学生平均分:72
4. (附加题)定义int[] getLower(int[][] score)方法,该方法要计算出哪名同学的不及格成绩最多,然后返回该名同学的所有成绩。并且在main方法中调用本方法获取不及格最多的学生成绩,然后在控制台打印该名同学的所有成绩。(15分)

  1. 示例
程序执行出现如下结果

  1. 参考答案







第21题
  1. 题干:
//准备数据语数外
String[][] all = {
{"张三","37","89","5"},
{"李四","95","41","79"},
{"王五","60","84","29"},
{"赵六","87","46","86"}
};
/**
* Created by lb_nst on 2018/10/17.
* 二维数组的实际应用
* 请使用String类型的数组,记录所有同学的名称即分数。
*
* 求:
*1.定义方法 printMathScore打印所有同学数学成绩
*2.定义方法 getCountMathScore获取所有同学数学成绩的总和
*3.定义方法 getAvgMathScore获取所有同学数学成绩的平均分
*4.定义方法 getAvgName获取所有数学成绩超过平均分的人名
*5.定义方法 getAvgCount获取所有数学成绩高过平均分的人数
*
* 友情提示:字符串转成整数的方法:int number = Integer.parseInt("109");
*
* 附加:
*找到平均成绩最高的学科
*获取该学科前三名同学的姓名
*请找出不及格的科数小于等于1门的同学,且总成绩大于180分
*/

  1. 示例
程序执行出现如下结果

  1. 参考答案






第22题
  1. 题干:
获取指定数组中元素值为奇数的元素个数,具体要求如下:
定义int getEvens(int[] arr)静态方法,方法内要求:获取指定数组arr中元素值为奇数的元素个数,并返回
定义main方法,方法内完成:
1.定义一个整数数组arr;
2.获取4个1~50之间(包含1和50)的随机数,并存入arr
传递arr调用getEvens(int[] arr)方法,获取返回值,并打印
  1. 示例
程序执行出现如下结果

  1. 参考答案

第23题
  1. 题干:
数组元素位置互换程序,要求如下:
定义static voidjudge(int[] arr)方法,方法内完成:比较指定数组arr中第一个角标的元素值与倒数第一个角标的元素值之间的大小,如果第一个角标的元素值小于倒数第一个角标的元素值,则将2个元素在数组中的位置互换,否则数组不变。判断完将arr中的所有元素打印
定义main方法,要求完成:
1.定义一个整数数组arr,包含元素11,21,5,12,7,14
2.传递arr调用judge(int[] arr)方法
  1. 示例
程序执行出现如下结果

  1. 参考答案

【Java|Java基础语法练习题】

    推荐阅读