一、选择结构
1、指定一个成绩,如果成绩大于等于60分,输出及格,否则输出不及格。
2、市出租车,起步价(3公里以内)为8元,超过3公里后按照每公里2元计算。要求根据路程计算费用。
解题思路:
(1) 指定路程
(2) 根据条件计算费用
(3) 输出费用。
3、判断是否为闰年,指定一个年份,输出是否为闰年。如:
2021:不是闰年
2020:是闰年
闰年的条件是能被4整除,但不能被100整除;或能被400整除。
4、积分兑换。0-1999积分换MP4,2000-5999积分换IPD,6000-9999积分换手机,10000积分以上换电脑。
5、根据性别和体重计算输血量。女性体重不超过50kg的输血量为200毫升,否则250毫升;男性不超过60kg的输血量为250毫升,否则300毫升。
6、当气温高于26℃时,需要开启制冷空调;气温低于10℃则开启制热空调;其余情况只需要开启送风模式即可,编制自动温控程序。
7、积分兑换。0-1999积分换MP4,2000-5999积分换IPD,6000-9999积分换手机,10000积分以上换电脑。
8、指定一个人的年龄。 如果小于6岁,则输出“儿童”,6岁到11岁,输出“少儿”; 12岁到17岁,输出“青少年”; 18岁到35岁,输出“青年”; 36岁到47岁,输出“中年”; 48岁以上输出“中老年”。
9、已知2021年12月1是星期三,指定一个12月的日期,判断是星期几。
二、循环结构
1、打印以下图形:
**
2、求1-100之间所有奇数之和。
3、有一张超大的纸张,纸的厚度为0.104毫米,珠峰的高度为8848米,这张纸对折多少次,能达到珠峰的高度。
4、篮球自由落体弹起高度若为上一次高度的5分之4, 假如篮球第一次弹起的高度为20米,求篮球落地后能弹多少次(弹起高度不小于0.01米)。
5、打印以下图形:
**
6、求1-100之间满足勾股定理的数:如果a满足,即

7、求水仙花数。水仙花数是一个3位数,它的个位立方、十位立方、百位立方三个数的和等于数的本身,
如
,153是水仙花数。
8、向银行借款100000元,每月向银行还款是欠款的10%,如果还款少于1000元,按1000元还款,多少个月能还清。
9、篮球自由落体弹起高度若为上一次高度的5分之4, 假如篮球第一次弹起的高度为20米,求篮球落地后能弹多少次(弹起高度不小于0.01米)。
10、算式:
,当s>10时,求m和n的值。
11、求1-20之间除了能被5整除的奇数之和。
12、小明和小张在打赌,小张说,2001年到2018年之间没有闰年,小明说2001年到2018年之间有闰年,请问,小张和小明谁说得对?
闰年的条件:能被4整除,但不能被100整除;或能被400整除。
13、打印以下图形

14、打印九九乘法表。

15、求n!


16、求公式

当s<0时,n的值。
17、抽奖游戏:
从键盘输入5次1-10的数字,如果与电脑生成的数字进行匹配:
(1)匹配到5个数字,中奖500万
(2)匹配到4个数字,中奖10万
(3)匹配到3个数字,中奖100元
三、数组
1、输入10个学生的成绩,将成绩保存到数组中,将不及格(小于60分)的同学成绩清零。
2、将一个给定的整型数组转置输出:
源数组:1 2 3 4 5 6
转置之后的数组:6 5 4 3 2 1
3、数组合并:
数组a:1,7,9,11,13,15,17,19
数组b:2,4,6,8,10
两个数组合并为数组c:1,7,9,11,13,15,17,19,2,4,6,8,10
四、方法
1、编写一个方法,可以买任何品牌和数量的水。
2、编写一个方法,输入一个1-10之间的数,电脑产生2个随机数,如果这个数在这2个数中间,输出中奖,否则输出谢谢参与。
3、编写一个方法,在10个数查找一个数,如果找到了输出这个数的位置,否则输出-1
4、求3个数的最大值。要求编写一个求2个数最大值的方法。
5、写一个方法,输入三条线段的长度,如果这三条线段能构成一个三角形,就返回三角形的周长,否则返回0。
6、编写一个方法,在一有序数列中,查找一个数,找到返回这个数的位置,否则返回-1。
采用二分法查找:
假如有一组数为3,12,24,36,55,68,75,88要查给定的值24.可设三个变量front,mid,end分别指向数据的上界,中间和下界,mid=(front+end)/2.
(1)开始令front=0(指向3),end=7(指向88),则mid=3(指向36)。因为a[mid]>x,故应在前半段中查找。
(2)令新的end=mid-1=2,而front=0不变,则新的mid=1。此时x>a[mid],故确定应在后半段中查找。
(3)令新的front=mid+1=2,而end=2不变,则新的mid=2,此时a[mid]=x,查找成功。
如果要查找的数不是数列中的数,例如x=25,当第三次判断时,x>a[mid],按以上规律,令front=mid+1,即front=3,出现front>end的情况,表示查找不成功。
五、面向对象编程(一)
1、领养一只宠物狗,昵称叫小白,品种为拉不拉多,健康值为80,亲密度为50。
编写宠物狗类(Dog)
狗类属性:昵称(name)、品种(species)、亲密度(love,值为0-100)、健康值(health,值为0-100)
狗类方法:
玩(play):玩一次亲密度+20,健康值-10,健康值小于30,不能再玩了。
喂食(feed):喂食一次健康值+20。
表白(print):说出它的所有属性值,如昵称:小白,亲密度:80等。



2、领养一只企鹅,昵称叫笨笨,性别为Q仔(Q妹),健康值为80,亲密度为50。
编写宠企鹅类(Penguin)
企鹅类属性:昵称(name)、性别(sex)、亲密度(love,值为0-100)、健康值(health,值为0-100)
企鹅类方法:
玩(play):捕鱼一次亲密度-10,健康值-20,健康值小于50,不能再捕鱼了。
喂食(feed):喂食一次健康值+30,亲密度+20。
表白(print):说出它的所有属性值,如昵称:笨笨,亲密度:80等。



3、用面向对象方法实现:一位年青(或者年长)的老师在教授Java课程。


4、编写一个程序,实现银行存、取款和转账功能。
(1)创建1个账户
(2)向账户存入1000元
(3)从账户取出100元
(4)再创建一个账户,向新账户转账500元
(5)查看2个账户的余额



5、小刘双11在淘宝购买了以下商品,请为小刘生成一份订单:
| 订单号 | 商品名称 | 类别 | 单价 | 数量 | 合计 |
|---|---|---|---|---|---|
| 1001 | 三国演义 | 书籍 | 200 | 4 | 800 |
| 1002 | 华为手机 | 电子 | 7000 | 1 | 7000 |
| 1003 | 联想笔记本 | 电子 | 5000 | 3 | 12000 |
| 总计 | 22800 |
【分析】
3个对象:
小刘—>客户类(属性:姓名。方法:购买)
三国演义—>商品类(属性:商品名称,类别,单价)
订单1001—>订单类(属性:订单号,商品,数量。方法:计算合计,输出订单)







6、实现将大象装进冰箱程序。
(1)创建大象类:属性有昵称,身长、身高、身宽。
(2)创建冰箱类:属性有型号,长、高、宽。
方法:
开门:输出“打开冰箱门”
装箱:能装进大象返回true,否则返回false。
关门:根据装箱的结果,如果结果为true,输出:“装箱成功,关闭冰箱门”,否则,输出:“装箱失败”。



六、面向对象编程(二)
1、根据类图写出类
(1)方法play():玩一次亲密度+20,健康值-10,健康值小于30,不能再玩了。
(2)方法feed():喂食一次健康值+20。
2、根据题1类图,重载玩的方法play(int n),玩飞盘,抓到一个飞盘,亲密度+5,健康值-20,健康值小于50,不能再玩了。
3、根据题1类图,重载2个构造方法:
(1)通过1个参数给昵称初始化,默认品种为拉不拉多,健康值为80,亲密度为50。
(2)通过4个参数分别给昵称、品种、健康值和亲密度初始化。




4、某汽车租赁公司出租多种车辆,车型及租金情况如下:
编写程序实现计算租赁价。
分析:
(1)轿车类:属性:车牌号、品牌、车型。方法:计算租金(天数),计算租金(公里数)。
(2)客车类:属性:车牌号、品牌、座位。方法:计算租金(天数),计算租金(公里数)。
(3)由(轿车类,客车类)抽象父类机动车类。





5、用多态实现打印机
(1)黑白打印机打印试卷。
(2)彩色打印机打印照片。




6、超市双11打折规则:
水果类商品:
50<=总价,8折优惠
30<=总价<50,9折优惠
肉类商品:
100<=总价,8折优惠
50<=总价<100,9折优惠






7、求以下图形的面积和周长
| Shape(图形) | ||
|---|---|---|
| Circle(圆形) | Triangle(等边三角形) | Rectangle(矩形) |
| radius(半径) | base(底边) heigth(高) |
length(长) width(宽) |
| area()(面积) perimeter()(周长) |
area()(面积) perimeter()(周长) |
area()(面积) perimeter()(周长) |





8、用多态实现第4题。
创建一个租车人类,属性:租车(可以租多辆车不同类型的车),天数。
方法:租赁。
七、接口
1、用接口实现:





2、顾客去市场组装一台电脑,打印出电脑配置。
(1)电脑硬盘和内存可以选择不现厂商的产品。
(2)硬盘可以更换为500G或300G。
(3)内存可以更换为8G或16G。







3、生成厂家生产三类门,一类是防盗门(SecurityDoor),具有开门、关门、加密、解密的功能,一类是普通门(OrdinaryDoor),具有开门、关门的功能,一类是防弹门(ShellproofDoor),具有开门、关门、加密、解密、防弹的功能。为了提高生产效率,厂家创建三块门的模板,用模板进行门的生产。
(1)门模板(Door):具有开门(open)、关门(close)功能
(2)锁模板(Lock):具有加密(encryption)、解密(decrypt)功能
(3)防弹模板(Shellproof):具有防弹(bulletproof)功能
请编写一个程序,生成普通门、防盗门和防弹门。





八、异常
1、从控制台输入1~3之间任一个数字,程序将输出相应的课程名称,【1、C# 2、Java 3、C++】根据键盘输入进行判断:
(1)如果输入正确,输出对应课程名称,否则,提示输入错误。
(2)不管输入是否正确,均输出“欢迎提出建议”语句 。
2、编写一个设置学生年龄的方法,在setAge(int age) 中对年龄进行判断:
(1)如果年龄介于18到30之间直接赋值,否则抛出异常。
(2)在测试类中调用setAge(int age)方法,使用try-catch捕获并处理异常。
九、Java API
1、输入一个字符串,输入一个字符,判断该字符在该字符串中出现的次数 。
如:我爱我的祖国,我爱我的故乡,查找“爱”字出现的次数,输出:2
【提示】先将字符串转换成字符数组,然后在字符数组中查找字符。
2、将一个数字字符串转换成逗号分隔的数字串,即从右边开始每三个数字用逗号分隔。
如: 12345678转换为12,345,678
3、去年的今天是星期几?
十、集合
1、将1-100之间所有的能被3和5整除的数加入到集合,并将第一个和最后一个元素删除。
2、主人领养了多只宠物,有可能是宠物狗,也有可能是企鹅,输出主人领养的宠物信息。
Pet、Dog、Penguin类(略)

3、模拟百度翻译,用户输入英语单词,搜索出对应的中文,如果没有找到抛出异常。
【参考例Map_01】
4、打印如下表格的数据。


十一、IO流
1、将c:\temp下文本文件example01.txt复制到c:\temp\当天日期目录下,文件名以时间戳为文件名。





