javaSE期末练习题

文章目录

  • 前言
  • 一、程序控制
    • 1.顺序结构
      • 问题描述
      • 解题思路
      • 题解
    • 2.选择结构
      • 2.1 题1
        • 问题描述
        • 解题思路
        • 题解
      • 2.1 题2
        • 问题描述
        • 解题思路
        • 题解
    • 3.循环结构
      • 3.1 阶乘的求取
        • 问题描述
        • 解题思路
        • 题解
      • 3.2 水仙花数
        • 问题描述
        • 解题思路
        • 题解
  • 二、数组
  • 三、类与对象
    • 1.类与对象
      • 1.1圆类
        • 问题描述
        • 解题思路
        • 题解
      • 1.2 学生类
        • 问题描述
        • 解题思路
        • 题解
    • 2. 继承
      • 问题描述
      • 解题思路
      • 题解
    • 3. 多态
      • 问题描述
      • 解题思路
      • 题解


前言


一、程序控制

1.顺序结构

问题描述

输入一个三位整数,输出个、十、百位的数字

解题思路

运算符:%、/的应用
详见文章

题解

Sequence.java文件

import java.util.Scanner;public class Sequence {public static void main(String[] args) {//输入一个三位整数,输出个、十、百位的数字Scanner input = new Scanner(System.in);int num = input.nextInt();System.out.println("个位"+(num%10));System.out.println("十位"+(num%100/10));System.out.println("十位"+(num/10%10));System.out.println("百位"+(num/100));//拓展:倒叙输出System.out.println((num%10)+""+(num/10%10)+""+(num/100));}
}

运行结果
在这里插入图片描述

2.选择结构

2.1 题1

问题描述

输入三个数,输出最值,从小到大排序输出

解题思路

求最值的常见方法
冒泡排序

题解

Choose1.java文件

import java.util.Scanner;//输入三个数,输出最值,从小到大排序输出
public class Choose1 {public static void main(String[] args) {Scanner input = new Scanner(System.in);int a = input.nextInt();int b = input.nextInt();int c = input.nextInt();
/*        //求最值if(a<b){a = b;}if(a<c){a = c;}System.out.println("最大值为: "+a);*///冒泡排序输出int t = 0;if(a>b){	// 3 2 1t=a;	// t=3a=b;	// a=2b=t;	// b=3}if(a>c){t=a;	// t=2a=c;	// a=1c=t;	// c=2}if(b>c){t=b;	// t=3b=c;	// b=2c=t;	// c=3}System.out.println("从大到小顺序输出:"+c+" "+b+" "+a);}
}

2.1 题2

问题描述

输入分数,输出对应的优良中差等级

解题思路

单一条件判断,用switch
详见文章

题解

Choose2.java文件

import java.util.Scanner;public class Choose2 {public static void main(String[] args) {Scanner input = new Scanner(System.in);int score = input.nextInt();switch (score/10){case 10:case 9:System.out.println("优");break;case 8:System.out.println("良");break;case 7:case 6:System.out.println("中");break;default:System.out.println("差");}}
}

3.循环结构

3.1 阶乘的求取

问题描述

输入一个整数数,求这个数的阶乘
阶乘公式:n!= n*(n-1)*(n-2)……*1

解题思路
题解

Jc.java文件

import java.util.Scanner;public class Jc {public static void main(String[] args) {Scanner input = new Scanner(System.in);int n = input.nextInt();int sum = 1;for (int i = 1; i <= n; i++) {sum *= i;}System.out.println(sum);}
}

3.2 水仙花数

问题描述

判断并输出100~1000以内的水仙花数
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=13+53+3^3。

解题思路
题解

Jc.java文件

public class Flower {public static void main(String[] args) {for (int i = 100; i < 1000; i++) {//个位int a = i%10;//十位int b = i%100/10;//百位int c = i/100;if(i == (a*a*a)+(b*b*b)+(c*c*c)){System.out.print(i+" ");}}}
}

二、数组

三、类与对象

1.类与对象

1.1圆类

问题描述

设计一个圆类(Circle),包括属性:半径;方法:构造方法、求面积方法area()、求周长方法perimeter。主方法中构造两个圆对象c1、c2、,c1半径15,c2半径30。然后分别显示两个圆的面积与周长

解题思路
题解

Circle.java文件

public class Circle {double r;public static void main(String[] args) {Circle c1 = new Circle();Circle c2 = new Circle();c1.r = 15;c2.r = 30;System.out.println("c1的面积: "+area(c1.r));System.out.println("c1的周长: "+perimeter(c1.r));System.out.println("c2的面积: "+area(c2.r));System.out.println("c2的周长: "+perimeter(c2.r));}public Circle(){}public static double area(double r){return Math.PI * r * r;}public static double perimeter(double r){return (2 * Math.PI * r);}
}

1.2 学生类

问题描述

设计一个学生类,包括属性:学号(No)、姓名(name)、性别(sex)、年龄(age);方法:构造方法、显示个人信息(showInFor())、显示并修改年龄的方法(modifyAge())

解题思路
题解

Circle.java文件

public class Student {private int No;private String name;private char sex;private int age;public void showInFor(){System.out.println("学号 "+No);System.out.println("姓名 "+No);System.out.println("性别 "+No);System.out.println("年龄 "+No);}public void setName(String name){this.name = name;}public String getName(){return name;}
}

2. 继承

问题描述

自行设计圆类,并在圆类的继承上派生圆柱类,注意派生类构造方法的书写。

解题思路

题解

Cylinder.java文件

public class Cylinder extends Circle{double h;public static void main(String[] args) {Cylinder cylinder = new Cylinder();cylinder.h = 4;cylinder.r = 2;v(cylinder.r, cylinder.h);s(cylinder.r, cylinder.h);}public static void v(double r,double h){System.out.println(area(r) * h);}public static void s(double r, double h){System.out.println(area(r)*2+perimeter(r)*h);}
}

3. 多态

问题描述

设计抽像图形类Shape,图形类里有求面积的抽像方法,派生矩形类、圆类等图形重写面积方法

解题思路

题解

Shape.java文件

//设计抽像图形类Shape,图形类里有求面积的抽像方法,派生矩形类、圆类等图形重写面积方法
public abstract class Shape {public abstract double getArea();
}
//矩形类E继承Shape类
class E extends Shape{double a;double b;public void area(double a,double b){this.a = a;this.b = b;}public double getArea() {return a*b;}
}
//圆类F继承Shape类
class F extends Shape{double r;public void area1(double r){this.r = r;}public double getArea(){return Math.PI*r*r;}
}//测试:
class Main11 {public static void main(String[] args) {E e = new E();F f = new F();e.area(3,4);f.area1(3);System.out.println("矩形面积为:" + e.getArea());System.out.println("圆形面积为:" + f.getArea());}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/39348.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从云原生视角看 AI 原生应用架构的实践

本文核心观点&#xff1a; 基于大模型的 AI 原生应用将越来越多&#xff0c;容器和微服务为代表的云原生技术将加速渗透传统业务。API 是 AI 原生应用的一等公民&#xff0c;并引入了更多流量&#xff0c;催生企业新的生命力和想象空间。AI 原生应用对网关的需求超越了传统的路…

使用myCobot和OAK-D OpenCV DepthAI摄像头制作一个可以在眼前始终享受视频的手机支架!

引言 由于YouTube和Netflix的出现&#xff0c;我们开始躺着看手机。然而&#xff0c;长时间用手拿着手机会让人感到疲劳。这次我们制作了一个可以在你眼前保持适当距离并调整位置的自动移动手机支架&#xff0c;让你无需用手拿着手机。请务必试试&#xff01; 准备工作 这次我们…

电脑文件自动备份:构建坚不可摧的数据防护网

在数字化浪潮的推动下&#xff0c;电脑已成为我们日常生活和工作中不可或缺的一部分&#xff0c;它承载着海量的个人信息、工作文档、学习资料等重要数据。然而&#xff0c;随着数据量的不断膨胀&#xff0c;数据安全问题也日益严峻。硬盘故障、系统崩溃、病毒攻击、人为误操作…

Echarts-仪表盘

1.案例一 1.1代码 option = {"series": [{"type": "gauge", "startAngle": 180, "endAngle": 0, "min": 0, "max": 100, "radius": "100%","center": ["50%"…

【中项第三版】系统集成项目管理工程师 | 第 2 章 信息技术发展

前言 第2章对应的内容大概率仅考察选择题&#xff0c;通读教程&#xff0c;速战速决。选择题分值预计在2-5分&#xff0c;属于必考的知识点。 2.1 信息技术及其发展 信息技术是在信息科学的基本原理和方法下的关于一切信息的产生、信息的传输、信息的发送、信息的接收等应用技…

Python中函数参数的传递技巧

刚开始接触Python时&#xff0c;你可能会因为函数参数传递的问题而感到困惑。理解位置参数和关键字参数的区别&#xff0c;并学会如何限定参数传递方式&#xff0c;可以帮助你有效避免常见的错误。 在这篇文章中&#xff0c;我们将介绍一种特殊的语法——使用斜杠&#xff08;…

2Python的Pandas:读取数据

1.读取Excel文件 1.1.读取数据 import pandas as pd# Excel 文件的 URL 或本地路径 url "https://www.gairuo.com/file/data/dataset/team.xlsx"# 使用 Pandas 的 read_excel 函数读取数据 try:df pd.read_excel(url)print(df.head()) # 打印 DataFrame 的前几行…

k8s公网集群安装(1.23.0)

网上搜到的公网搭建k8s都不太一致, 要么说的太复杂, 要么镜像无法下载, 所以写了一个简洁版,小白也能一次搭建成功 使用的都是centos7,k8s版本为1.23.0 使用二台机器搭建的, 三台也是一样的思路1.所有节点分别设置对应主机名 hostnamectl set-hostname master hostnamectl set…

简述设计模式-代理模式

概述 代理模式&#xff1a;一个类代表另一个类的功能。代理模式通过引入一个代理对象来控制对员对象的访问。 举个例子&#xff0c;就像明星都有经纪公司&#xff0c;商业合作都是直接和经济公司沟通&#xff0c;不会直接和明星沟通。 律师和委托人就是代理关系&#xff0c;…

域名可用性查询的步骤

在互联网时代&#xff0c;拥有一个独特的域名是至关重要的。域名不仅代表了您的在线身份&#xff0c;也是您品牌、个人或企业在数字世界中的门面。域名的可用性查询是注册域名前的关键步骤&#xff0c;本文将详细介绍如何进行域名可用性查询&#xff0c;并提供一些有用的技巧和…

使用Python实现日历生成器

文章目录 准备工作实现步骤1. 导入calendar模块2. 获取用户输入3. 生成并打印日历完整代码示例 扩展功能 在这个技术博客中&#xff0c;我们将探索如何使用Python来创建一个简单的日历生成器。这个日历生成器将能够根据用户输入的年份和月份&#xff0c;生成并显示该月的日历。…

Promise,async/await的运用

一&#xff0c;了解Promise Promise是异步编程的一种解决方案&#xff0c;它是一个对象&#xff0c;可以获取异步操作的消息&#xff0c;它的出现避免了地狱回调。 &#xff08;1&#xff09;Promise的实例有三个状态&#xff1a; Pending&#xff08;进行中&#xff09; Re…

如何找BMS算法、BMS软件的实习

之前一直忙&#xff0c;好久没有更新了&#xff0c;今天就来写一篇文章来介绍如何找BMS方向的实习&#xff0c;以及需要具备哪些条件&#xff0c;我的实习经历都是在读研阶段找的&#xff0c;读研期间两段的实习经历再加上最高影响因子9.4分的论文&#xff0c;我的秋招可以说是…

C - Popcorn(abs358)

题意&#xff1a;有n个摊子&#xff0c;m个爆米花&#xff0c;想花费最少去的店铺买到所有的口味的爆米花&#xff0c;找到每一列都为‘o’的最少行数。 分析&#xff1a;用dfs寻找最少路径 #include<bits/stdc.h> using namespace std; typedef long long ll; char x;…

后台运行大师:HarmonyOS 3.0中如何轻松设置APP常驻后台

有不少人想要让某些常用的APP直接挂在后台&#xff0c;减少应用程序自动关闭的情况。这种需求&#xff0c;其实就是希望APP能够“保持在后台运行”。 本篇文章用14张图片、7大步骤&#xff0c;讲解手机如何将某个APP保持在后台运行。图片直接使用的是华为手机HarmonyOS 3.0的手…

ComfyUI教程,如何在 ComfyUI 中如何制作高质量白底图,一篇文章教会你!

前言 做电商的朋友都知道&#xff0c;一般平台都会有白底图的要求&#xff0c;在上传白底图后&#xff0c;商品在首页分类页、搜索分类页、品牌馆、电器城等场景中会有更多的露出机会&#xff0c;可能会获得更多的用户流量。 制作白底图本质就是要先抠图&#xff0c;一些抠图…

stm32学习笔记---USART串口协议(理论部分)

目录 通信 通信的目的 通信协议 STM32的通信协议 各种协议的通信引脚介绍 通信空间和时间 时钟特性 电平特性 设备特性 串口通信 硬件电路 电平标准 串口参数及时序 时序 串口的参数 串口通信的实际波形 声明&#xff1a;本专栏是本人跟着B站江科大的视频的学习…

Vision Transformer论文阅读笔记

目录 An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale -- Vision Transformer摘要Introduction—简介RELATED WORK—相关工作METHOD—方法VISION TRANSFORMER (VIT)—视觉Transformer(ViT) 分析与评估PRE-TRAINING DATA REQUIREMENTS—预训练数据…

VS2022+Qt+OpenCV Debug模式下,循环中格式转换引起的内存异常问题 debug_heap.cpp

文章目录 前言一、问题二、报错1.提示图片2.提示堆栈3.反汇编位置 三、解决办法总结 前言 最近在使用VS2022&#xff0c;C&#xff0c;OpenCV&#xff0c;Qt开发时&#xff0c;遇到了一个疑难杂症-在循环中执行字符串格式转换会触发内存异常&#xff0c;经过痛苦的排查过程&am…

React@16.x(46)路由v5.x(11)源码(3)- 实现 Router

目录 1&#xff0c;Router 的结构2&#xff0c;实现2.1&#xff0c;react-router1&#xff0c;matchPath.js2&#xff0c;Router.js3&#xff0c;RouterContext.jsx4&#xff0c;index.jsx 2.2&#xff0c;react-router-domBrowserRouter.jsxindex.jsx 1&#xff0c;Router 的结…