java基础练习题 (珍藏版)

1: 录入某学生5门课的成绩并计算平均分,如果某分数录入为负,停止录入并提示录入错误.
2: 求1~100间不能被3整除的数之和
3: 输入 3 个正数,判断能否构成一个三角形。(两边只和大于第三边,并且两边只差小于第三边)
4: 输入一个字符,判断它是否为小写字母,如果是,将它转换成大写字母,否则,不转换。char 都可以转成一个整形的数字.
5: 编写程序,从键盘输入一个 0~99999 之间的任意数,判断输入的数是几位数? 使用 %
6: 输入的一个整数,按相反顺序输出该数。例如,输入为 3578,输出为 8753。
7: 使用循环语句输出下面的图形。

#

# # #

# # # # #

# # # # # # #

8: 编程求 1~10000 之间的所有“完全数”,完全数是该数的所有因子之和等于该数的数。例如,6 的因子有 1、2、3,且 6=1+2+3,所以 6 是完全数。

9: 将一个正整数分解质因数。例如:输入 90,打印出 90=233*5。

10: 输入一行字符,分别统计出其英文字母、空格、数字和其它字符的个数.

11: 一球从h米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第n次落地时,共经过多少米?第n次反弹多高?

12: 输入三个整数x,y,z,请把这三个数由小到大输出。

13: 输出9*9口诀。

14 : 输入行数,然后打印一个棱形. 如果输入3,则打印如下图形

	*       //1
       * *      //2    1个空格
      *   *     //3    3个空格
         *     *    //4    5个空格
          *   *
       * *		
        *

15: 输入行数,然后打印打印一个等边三角形.

	*
       * *
          * * *
         * * * *

16: 输入行数, 然后打印一个直角三角形. 如输入4,如图

	   *
	  **
	 ***
	****

a: 数组: 请将一个大小为5的int类型数组,将里面的数字从大到小输出
b: 数组: 请定义一个char类型的数组,然后判断里面,有多少个大写字母,以及小写字母.
char[] c = new char[]{‘a’,‘F’,‘E’,‘s’};
//判断一下, c这个数组里面,有多少个大写字母,多少个小写字母

c: 数组: 请定义一个 float类型的数组, 判断里面有多少种不一样的小数位.
//判断不同小数位的数字个数.
float[] fs = new float[]{12.2f,11.11f,12.123f,11.22f};

机试题1:
创建一个面积类,可以计算长方形,圆形的面积。并在DEMO类测试,计算长方形面积,圆的面积。
定义一个接口,接口里面有求面积的方法,分别写长方形,圆形两个实现类.

	pai  ->  Math.PI		

机试题2:

通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出 席的重复字母进行压缩,并输出压缩后的字符串。 


压缩规则: 

1、仅压缩连续重复出现的字符。比如字符串”abcbc”由于无连续重复字符,压缩后的字 符串还是”abcbc”。

2、压缩字段的格式为”字符重复的次数+字符”。例如:字符串”xxxyyyyyyz”压缩后就 成为”3x6yz”。
3、aabbccaa 压缩后为:2a2b2c2a

机试题3:

输入一个不包含括号的表达式, 例如:   1225+3*2/4-2+1   .要求计算最终的结果.

注意: 字符串转int类型:  int a = Integer.parseInt(str);

思路分析:

	(1)输入的表达式是个字符串类型,要获取它的每个运算数和运算符需要用到charAt() 方法。然后挨个字符地存入ArrayList,再使用get()方法遍历字符串。

	(2)四则表达式的运算符分两种优先级,需遍历两次,第一次处理乘法和除法,第二次 处理加法和减法。遇到运算符后将其前后两个数的运算结果求出,然后使用add()方法将运 算结果插入到前运算数的位置,再连续使用remove()方法将参与此次运算的运算符和两个运算数移除。最后 ArrayList中只剩一个元素,即为该表达式的值。使用parseInt()方	法将其格式化后返回。
发布了36 篇原创文章 · 获赞 29 · 访问量 5884

猜你喜欢

转载自blog.csdn.net/weixin_43501566/article/details/105354669
今日推荐