当前位置: 首页 > news >正文

Java刷题-基础篇

目录

题目1:打印1~100内奇数和、偶数和

题目2:计算5的阶乘

题目3:计算 1!+2!+3!+4!+5! 的和

题目4:找1~100之间即能被3整除,又能被5整除的数字,要求必须使用break/continue

题目5:实现猜数字小游戏(不需要菜单)

题目6:判断一个整数是否为素数

题目7: 打印1~100之间的所有素数

题目8:输出1000~2000之间所有的闰年

题目9:输出乘法口诀表

题目10:求两个正整数的最大公约数

题目11:求0~99999之间的"水仙花数"并输出

题目12:写一个函数返回参数在内存中二进制形式1的个数


题目1:打印1~100内奇数和、偶数和

思路:先利用循环得到1~100之间的数,判断如果i是奇数,则sumOdd+=i,如果i为偶数则,sumEven+=i,结束循环后在屏幕上打印结果即可。

public static void main(String[] args) {int i = 1;int sumOdd = 0;//奇数int sumEven = 0;//偶数while (i <= 100) {if (i % 2 == 1) {sumOdd += i;} else {sumEven += i;}i++;}System.out.println("奇数和"+sumOdd);System.out.println("偶数和"+sumEven);}

题目2:计算5的阶乘

思路:5!为1*2*3*4*5,将循环变量设为i,进入循环的条件设置为i<=5,在循环里面进行mul*=i的操作(别忘了调整循环变量i的大小),结束循环后在屏幕上打印结果即可。

public static void main(String[] args) {int i = 1;int mul = 1;while (i <= 5) {mul *= i;i++;}System.out.println(mul);}

题目3:计算 1!+2!+3!+4!+5! 的和

思路:求一个数的阶乘好求,如果要求不同数的阶乘,我们也可以直接利用求一个数阶乘的方法,在它的外面加上一层循环,即变量即j表示求几的阶乘,而原本阶乘方法中的循环的条件改为与 j 相关,循环全部结束后在屏幕上打印结果即可。

public static void main(String[] args) {int j = 1;int sum = 0;while (j <= 5) {int i = 1;int mul = 1;while (i <= j) {mul *= i;i++;}sum += mul;j++;}System.out.println(sum);}

题目4:找1~100之间即能被3整除,又能被5整除的数字,要求必须使用break/continue

思路:它们的最小公倍数是15,也就是说只要是15的倍数都能被它两整除,可以先利用循环得到1~100之间的数,然后判断i%15是否==0,不是则i++,使用continue不执行后面打印的功能;是则直接打印,然后i++;

public static void main(String[] args) {int i = 1;while (i <= 100) {if (i % 15 != 0) {i++;continue;}System.out.println(i);i++;}}

题目5:实现猜数字小游戏(不需要菜单)

思路:随机数的生成要用到 Random random = new Random(); 得到的随机数写成 int randNum = random.nextInt(100); 的格式,在()写入n就生成 [0,n-1) 之间的数。为了多次猜测,所以用到了while(true),在while内部进行游戏判断的过程即可,如果猜对了用break跳出循环即可。

public static void main(String[] args) {Scanner scan = new Scanner(System.in);Random random = new Random();int randNum = random.nextInt(100);//[0,100)System.out.println("随机数是"+randNum);while (true) {System.out.print("请输入>");int num = scan.nextInt();if (num < randNum) {System.out.println("猜小了");} else if (num == randNum) {System.out.println("猜对了");break;} else {System.out.println("猜大了");}}}

题目6:判断一个整数是否为素数

思路:首先了解什么是素数"素数是大于1的自然数,且只能被1或它本身整除"

技巧:构成num的两个数一定有一个小于等于num开平方,因此在写除数时不用写成 i < num,直接写成 i <= Math.sqrt(num),如果num被i整除,则break,说明num肯定不是素数。注意,出for循环后会有两种情况,一种是通过break出来的,另一种是循环结束出来的,因此要判断一下是哪一种情况出来的。

public static void main(String[] args) {Scanner scan = new Scanner(System.in);int num = scan.nextInt();int i = 0;for (i = 2; i <= Math.sqrt(num); i++) {if (num % i == 0) {break;//说明不是素数}}if (i > Math.sqrt(num)) {System.out.println(num+"是素数");} else {System.out.println(num+"不是素数");}}

题目7: 打印1~100之间的所有素数

思路:在上面判断是否为素数的基础上,加一层循环,得到2~100之间的数,将上面代码中的num替换乘i即可。

public static void main(String[] args) {for (int i = 2; i < 101; i++) {int j = 0;for (j = 2; j <= Math.sqrt(i) ; j++) {if (i % j == 0) {break;}}if (j > Math.sqrt(i)) {System.out.println(i+"是素数");}}}

题目8:输出1000~2000之间所有的闰年

思路:判断该年年份是闰年的条件:①能被4整除,但不能被100整除 ②能被400整除

public static void main(String[] args) {for (int i = 1000; i < 2001; i++) {if ((i % 4 == 0 && i % 100 != 0) || (i % 400 == 0)) {System.out.println(i);}}}

题目9:输出乘法口诀表

public static void main(String[] args) {//外层变化慢for (int i = 1; i < 10; i++) {//内层变化快for (int j = 1; j <= i; j++) {System.out.printf("%d*%d=%2d ", i, j, i*j);}System.out.println();}}

题目10:求两个正整数的最大公约数

思路:辗转相除法

public static void main(String[] args) {Scanner scan = new Scanner(System.in);int a = scan.nextInt();int b = scan.nextInt();int c = a % b;while (c != 0) {a = b;b = c;c = a % b;}System.out.println(b);}

题目11:求0~99999之间的"水仙花数"并输出

思路:水仙花数是指一个 n 位数(n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。先得到100~999999之间的数,判断一下i是几位数(这决定了后面要求每一位的几次方),且由于i不能改变,所以要定义一个临时i去参与计算,每得到i的一位就求它的次方数并放入sum中,最后判断一下在当前循环下sum是否等于i。

public static void main(String[] args) {for (int i = 100; i < 1000000; i++) {//1.计算当前数字i是一个几位数int count = 0;int tmp = i;while (tmp != 0) {count++;tmp /= 12;}tmp = i;//方便后面再次使用int sum = 0;//2.求tmp的每一位while (tmp != 0) {sum += Math.pow(tmp % 10, count);tmp /= 10;}if (sum == i) {System.out.println(i);}}}

题目12:写一个函数返回参数在内存中二进制形式1的个数

public static void main(String[] args) {Scanner scan = new Scanner(System.in);//例如求:-1在内存中的二进制表示形式1的个数// 10000000 00000000 00000000 00000001 -1原码// 11111111 11111111 11111111 11111110 -1反码// 11111111 11111111 11111111 11111111 -1补码// 即有32位// 11111111 11111111 11111111 11111111 -1补码// 00000000 00000000 00000000 00000001 1的补码//通过判断 (-1>>i)& 1 == 1可以实现效果,i < 32int a = scan.nextInt();int count = 0;for (int i = 0; i < 32; i++) {if (((a >> i) & 1) == 1) {count++;}}System.out.println(count);}

  本篇文章已完结,谢谢支持哟 ^^ !!!

相关文章:

Java刷题-基础篇

目录 题目1&#xff1a;打印1~100内奇数和、偶数和 题目2&#xff1a;计算5的阶乘 题目3&#xff1a;计算 1!2!3!4!5! 的和 题目4&#xff1a;找1~100之间即能被3整除&#xff0c;又能被5整除的数字&#xff0c;要求必须使用break/continue 题目5&#xff1a;实现猜数字小…...

Linux——mysql运维篇

回顾基本语句&#xff1a; 数据定义语言 ( DDL ) 。这类语言用于定义和修改数据库的结构&#xff0c;包括创建、删除和修改数据库、表、视图和索引等对象。主要的语句关键字包括 CREATE 、 DROP 、 ALTER 、 RENAME 、 TRUNCATE 等。 create database 数据库 &…...

力扣每日一题-统计已测试设备-2024.5.10

力扣题目&#xff1a;统计已测试设备 题目链接: 2960.统计已测试设备 题目描述 代码思路 根据题目内容&#xff0c;第一感是根据题目模拟整个过程&#xff0c;在每一步中修改所有设备的电量百分比。但稍加思索&#xff0c;发现可以利用已测试设备的数量作为需要减少的设备电…...

代码+视频,R言语处理数据中的缺失值

在SCI论文中&#xff0c;我们不可避免和缺失数据打交道&#xff0c;特别是在回顾性研究&#xff0c;对于缺失的协变量&#xff08;就是混杂因素&#xff09;&#xff0c;我们可以使用插补补齐数据&#xff0c;但是对于结局变量和原因变量的缺失&#xff0c;我们不能这么做。部分…...

PGSync安装使用教程(PostgreSQL数据实时同步至Elasticsearch)

说明 pgsync项目有两个&#xff0c;一个是ankane/pgsync&#xff0c;用于pgsql之间的数据同步&#xff0c;另一个是toluaina/pgsync&#xff0c;用于pgsql的数据同步至es&#xff0c;本教程适用于第二个项目。 pgsync应该是目前为止唯二支持es8的数据同步工具&#xff0c;另一…...

前端主题切换的多种方式

动态link标签加载不同主题css **原理&#xff1a;**提前准备好几套CSS主题样式文件&#xff0c;在点击切换主题时&#xff0c;创建link标签动态加载到head标签中&#xff0c;或者是动态改变link标签的href属性。 缺点&#xff1a; 动态加载样式文件&#xff0c;如果文件过大网…...

使用RESTful API构建 web 应用程序

RESTful API是一种基于HTTP协议的架构风格&#xff0c;用于设计网络应用程序的 API。它强调使用标准的HTTP方法&#xff08;如GET、POST、PUT和DELETE&#xff09;对资源进行操作&#xff0c;并使用统一的资源标识符&#xff08;URI&#xff09;来唯一标识每个资源。RESTful AP…...

KaiOS Data PDN 数据建立流程

代码逻辑 APN创建 在 DataCallManager.jsm中,会对所有apnsetting创建一个datacall,其中会包含dataprofile的成员(通过apn参数来创建),在之后的流程用于直接发送到modem建立PDN。 PDN建立 1、DataCallManager.jsm -dcInterface.setupDataCall //RILNetworkInterface.c…...

Mybatis-Plus常用的增删改查坑

添加依赖 <!--实体类上加上Data注解就不用写get&#xff0c;set&#xff0c;toString&#xff0c;equals等方法了--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional…...

初识指针(4)<C语言>

前言 前面的文章&#xff0c;已经对指针的基础概念以及运用有了初步了解&#xff0c;我们可以进一步探究指针比较深入的知识&#xff0c;下文将主要介绍&#xff1a;使用指针数组模拟二维数组、字符指针变量、数组指针、二维数组传参的本质、函数指针、typedef关键字等。 目录…...

pyqt 工具栏QToolBar控件

pyqt 工具栏QToolBar控件 QToolBar控件介绍效果代码 QToolBar控件介绍 QToolBar 是 PyQt&#xff08;中的一个控件&#xff0c;它提供了一个工具栏&#xff0c;通常包含一系列的工具按钮或下拉菜单&#xff0c;用于提供对应用程序功能的快速访问。 QToolBar 通常与 QMainWind…...

SystemVerilog/Verilog中的仿真延时建模之模块路径延时

一 概要 模块路径延迟,描述的是模块中信号从源端到目的端传输的延迟。 路径以及对应的延迟是在模块中的specify块中指定的,其中信号源端一般为input或者inout,而目的端则只能为output或者inout.在specify中指定的模块路径,常见的形式主要三种,分别是: 简单路径(Simple Path…...

代码随想录算法训练营Day36 | 738.单调递增的数字、968.监控二叉树、贪心算法总结 | Python | 个人记录向

本文目录 738.单调递增的数字做题看文章 968.监控二叉树做题看文章 贪心算法总结以往忽略的知识点小结个人体会 738.单调递增的数字 代码随想录&#xff1a;738.单调递增的数字 Leetcode&#xff1a;738.单调递增的数字 做题 无思路。 看文章 例如&#xff1a;98&#xff…...

FME学习之旅---day26

我们付出一些成本&#xff0c;时间的或者其他&#xff0c;最终总能收获一些什么。 【由于上周&#xff0c;上班状态不是很好&#xff0c;事情多又杂&#xff0c;没有学习的劲头&#xff0c;就短暂的休息了一下下。双休爬山&#xff0c;给自己上了强度&#xff0c;今天才缓过来…...

JAVA学习-练习试用Java实现电话号码的字母组合

问题: 给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下&#xff08;与电话按键相同&#xff09;。注意 1 不对应任何字母。 示例 1&#xff1a; 输入&#xff1a;digits "23" 输…...

js代码中关于async await的滥用 async await的滥用

概念&#xff1a; 返回值&#xff1a; async返回一个promise---这个返回值是默认自发行为 async function name1(params) {console.log(params) } let result name1(lion) console.log(result) // Promise { undefined } result.then(res > console.log(res)) // undefin…...

基础算法,贪心算法,贪心策略,OJ练习

文章目录 一、概念二、OJ练习2.1 区间选点2.2 区间合并2.3 区间2.4 合并果子2.5 排队接水2.6 货仓选址2.7 防晒2.8 畜栏预定2.9 雷达设备2.10 国王游戏2.11 耍杂技的牛2.12 给树染色2.13 任务2.14 能量石 三、总结 一、概念 贪心是一种在每次决策时采取当前意义下最优策略的算…...

一文讲透亚马逊云三层架构

关于三层架构&#xff0c;我们有很多想说的话&#xff1a; &#xff08;以下内容以下都在VPC中&#xff09; cloudfront做CDN加速网关规划S3做静态网站托管APIGateway作为统一网关入口认证/限流Lambda 作为传统后端&#xff0c;并发&#xff0c;底层架构Redis缓存DDB作为持久化…...

只需3步,使用Stable Diffusion无限生成AI数字人视频(附安装包)

基本方法 搞一张照片&#xff0c;搞一段语音&#xff0c;合成照片和语音&#xff0c;同时让照片中的人物动起来&#xff0c;特别是头、眼睛和嘴。 语音合成 语音合成的方法很多&#xff0c;也比较成熟了&#xff0c;大家可以选择自己方便的&#xff0c;直接录音也可以&#…...

RustGUI学习(iced)之小部件(七):如何使用图像image部件来显示图片?

前言 本专栏是学习Rust的GUI库iced的合集,将介绍iced涉及的各个小部件分别介绍,最后会汇总为一个总的程序。 iced是RustGUI中比较强大的一个,目前处于发展中(即版本可能会改变),本专栏基于版本0.12.1. 概述 这是本专栏的第七篇,主要讲述图像Image部件的使用,会结合实例…...

Substrate 入门课第 14 期圆满结束,岗位内推直达知名 Web3 项目!

Substrate&#xff0c;一个完全免费且开源的框架&#xff0c;利用 Rust 语言的强大功能和安全性&#xff0c;为全球开发者提供了一个高效和灵活的开发环境。借助其模块化的设计&#xff0c;即使是新手开发者也能在短短 15 分钟内搭建起定制化的区块链。自 2020 年以来&#xff…...

android进阶-AIDL

参考&#xff1a;Android进阶——AIDL详解_android aidl-CSDN博客 AIDL&#xff08;Android 接口定义语言&#xff09;&#xff0c;可以使用它定义客户端与服务端进程间通信&#xff08;IPC&#xff09;的编程接口&#xff0c;在 Android 中&#xff0c;进程之间无法共享内存&…...

贪心算法-活动选择问题背包问题

目录 活动选择问题 无重叠区间-Leetcode 435 分数背包问题--贪心解法 贪心法 0-1 背包问题 贪心法 贪心算法的局限 Set cover problem 活动选择问题 分析: /* 要在一个会议室举办n个活动 - 每个活动有它们各自的起始和结束时间 - 找出在时间上互不冲突的活动组合,能…...

Web3工具集合 - 00

使用 React 和 Material-UI 构建的 Web3 工具集合 大家好&#xff01; 我很高兴向大家介绍我最近刚启动了一个项目&#xff1a;Web3 工具集合。 这个项目的目的是一个集成各种 Web3 工具的网站&#xff0c;旨在为开发人员和加密货币爱好者提供便捷的工具和资源。 特点&#…...

分布式与集群的区别

先说区别&#xff1a; 分布式是并联工作的&#xff0c;集群是串联工作的。 分布式中的每一个节点都可以做集群。而集群并不一定就是分布式的。 集群举例&#xff1a;比如新浪网&#xff0c;访问的人很多&#xff0c;他可以做一个集群&#xff0c;前面放一个相应的服务器&…...

学习心得:如何开始学习一款MCU

一、MCU简介 任何一款MCU&#xff0c;其基本原理和功能都是大同小异&#xff0c;所不同的只是其外围功能模块的配置及数量、指令系统等。对于指令系统&#xff0c;虽然形式上看似千差万别&#xff0c;但实际上只是符号的不同&#xff0c;其所代表的含义、所要完成的功能和寻址…...

顺序表的实现(迈入数据结构的大门)(1)

上一节我们认识到了什么是数据结构 这一节我们就来实现第一个数据结构的实现 思考一个问题&#xff1a; 假定一个数组&#xff0c;空间为10&#xff0c;已经使用了5个&#xff0c;向其中插入数据的步骤&#xff1a; 1.插入数据&#xff0c;我们先要求数组长度&#xff0c;其…...

RERCS系统-WDA+BOPF框架实战例子 PART 1-新建List UIBB(列表组件)并分配Feeder Class和Node Element

需求背景&#xff1a; 已有的项目主数据功能&#xff0c;新增一个列表UIBB显示主数据额外的关联数据明细。 1、Fiori页面通过右键-技术帮助打开对应的组件配置&#xff1b; 2、双击对应的组件配置&#xff0c;调整对应的页面新建UIBB&#xff1b; 3、填写对应的UIBB属性字段&a…...

如何从 iPhone 恢复已删除或丢失的联系人?

不小心删除了您的 iPhone 联系人&#xff1f;不用担心。我们将向您展示如何从 iPhone或 iPad恢复已删除或丢失的联系人。当您从 iPhone 中删除联系人时&#xff0c;您可能认为无法将其恢复。但事实是&#xff0c;您可以从 iPhone 或 iPad 恢复已删除的联系人&#xff0c;因为它…...

RISCV 外部GCC 工具链安装@FreeBSD15

在交叉编译的时候&#xff0c;可以使用FreeBSD15默认的工具链&#xff1a;LLVM 也可以使用GCC工具链&#xff0c;GCC可以使用现成pkg包安装&#xff0c;也可以编译安装。 LLVM的特点是高移植性和高效&#xff0c;但学习成本高。GCC的特点是成熟稳定&#xff0c;但优化能力有限…...