【JavaSE】java刷题——基础语法熟练应用

前言

通过本篇题目,可以让初学Java的小伙伴们更加熟练Java的基础语法~

欢迎关注个人主页:逸狼


创造不易,可以点点赞吗~

如有错误,欢迎指出~



题1:数字9 出现的次数

 题述:编写程序数一下 1到 100 的所有整数中出现多少个数字9

思路

分两步

  1. 取个位上的9  有9 19 29……99 有10个
  2. 取十位上的9  有90 91 92 93……99 有10个

代码实现

public class test {//1~100数字9出现的个数public static int fan1(int n){int count=0;for (int i = 1; i <=100 ; i++) {if(i%10==9){//取个位上的9  有9 19 29……99 有10个count++;}if(i/10==9){//取十位上的9  有90 91 92 93……99 有10个count++;}}return count ;}public static void main(String[] args) {System.out.println(fan1(100));}

结果是20

题2:计算阶乘的和

题述:输入一个正整数,求它从1到该整数阶乘的和。如指定数字5,求1!+2!+……5!

思路

先实现一个数求阶乘的方法,再相加

代码实现

 //写一个函数求阶乘public static int fac(int n) {int ret = 1;for (int i = 1; i <= n; i++) {ret *= i;}return ret;}//此函数求阶乘的和public static int facSum(int n){int sum=0;for (int i = 1; i <=n ; i++) {sum+=fac(i);}return sum;//要记得要写返回值,漏了就会一直报错}public static void main(String[] args) {int n=facSum(5);System.out.println(n);}

结果是153

题3:求水仙花数

水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(,水仙花数是指一个 3 位数,它的每个数位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。

思路

  1. 统计当前数字有几位数
  2. 取到数字的每一位上的数字
  3. 判断是否符合要求

例如 153(1^3 + 5^3+ 3^3 = 153)

步骤是先统计153有3位数字,再取到153每一位数字,最后判断1^3 + 5^3+ 3^3 = 153是否成立

代码实现

    public static void main(String[] args) {//求水仙花数for (int i = 0; i <= 999999; i++) {//遍历1~999999的数字//计算当前有几位数int count=0;int tmp=i;while(tmp!=0){count++;tmp/=10;}//求tmp的每一位tmp=i;int sum=0;while(tmp!=0){sum+=Math.pow(tmp%10,count);//计算tmp的count次方tmp/=10;}if(sum==i){System.out.println(i);}}}

结果中153 、370、371、407是水仙花数 

题4:打印素数

打印1~100的素数

思路1

法一:写一个方法判断一个数字是否是素数,再遍历2~100,打印符合的数字

代码实现1

//判断一个数字是否是素数public static boolean is_prime(int n){for (int i = 2; i <n ; i++) {if(n%i==0){return false;}}return true;}public static void main(String[] args) {//打印1~100的素数for (int i = 2; i <=100 ; i++) {if(is_prime(i)){System.out.print(i+" ");}}}

思路2

法二:num=a*b 其中a和b两个必有一个 <= 根号num

代码实现2

 public static void main(String[] args) {//打印1~100的素数int num=100;for (int k = 1; k <= num; k++) {int i = 2;//跳出for循环时有两个结果for ( ; i <=Math.sqrt(k) ; i++) {//1.i>根号numif(k%i==0){//2.num被整除了break;}}if(i>Math.sqrt(k)) {System.out.println(k+" ");}}

结果

题5:猜数字游戏的实现

import java.util.Random;
import java.util.Scanner;public static void main(String[] args) {//java实现猜数字游戏int count=5;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.println("你还有"+count+"次机会!");System.out.println("请输入要猜的数字:");int num=scan.nextInt();if(num>randNum){System.out.println("猜大了!");}else if(num<randNum){System.out.println("猜小了!");}else{System.out.println("恭喜你,猜对了!数字是:"+randNum);break;}count--;if(count==0){System.out.println("很遗憾,挑战失败!数字是:"+randNum);break;}}}

结果

题6:打印x形图案

思路

利用坐标关系i==j和i+j=n-1时打印*,其他情况打印空格

代码实现

    //打印x形图案public static void printX(int n){for (int i = 0; i < n; i++) {for (int j = 0; j < n; j++) {if(i==j||i+j==n-1){System.out.print("*");}else{System.out.print(" ");}}System.out.println();//换行}}public static void main(String[] args) {printX(5);}

结果

题7:计算分数

代码实现

//计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值public static void main(String[] args) {double ret=0;//注意这里要用double,不能用intint flag=1;for (int i = 1; i <=100;i++) {ret += 1.0 / (flag * i);flag=-flag;//用于改变i的符号}System.out.println(ret);}

结果 0.688172179310195

题8:模拟登陆

题述:编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输 入,最多输入三次。三次均错,则提示退出程序

代码实现

public static void login(){int count=3;Scanner scan=new Scanner(System.in);String string="123456";while(count!=0){System.out.println("请输入密码:");String password= scan.nextLine();if(password.equals(string)){//匹配字符串用equals//登录成功System.out.println("登录成功!");break;}else{//登录失败count--;System.out.println("密码错误,你还有"+count+"次机会!");}}}public static void main(String[] args) {login();}

结果

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

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

相关文章

简单了解原型模式

什么是原型模式 区别于单例模式&#xff0c;原型模式的一个类可以有多个实例化的对象。 原型模式通过拷贝来产生新的对象&#xff0c;而不是new&#xff0c;并且可以根据自己的需求修改对象的属性。 实现Cloneable接口实现拷贝 而拷贝又分为浅拷贝和深拷贝&#xff0c;两者在…

JVM(一)——内存结构

一. 前言 1、什么是 JVM? 1&#xff09;定义&#xff1a; Java Virtual Machine - java 程序的运行环境&#xff08;java 二进制字节码的运行环境&#xff09; 2&#xff09;好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收功能数组下标越…

(科研篇)如何做科研

1.科研周期&#xff1a; 2.CCF列表 1.搜索论文&#xff08;顶会&#xff09; 2.谷歌学术检索 3.如何阅读文献 最重要的部分是abstract introduction 和related work&#xff0c;要明白某个东西的历史&#xff0c;从而进一步发现的缺陷&#xff0c;然后通过实现实验去证明。 通…

【数据结构刷题专题】—— 二分查找

二分查找 二分查找模板题&#xff1a;704. 二分查找 二分查找前提&#xff1a; 有序数组数组中无重复元素 左闭右闭&#xff1a; class Solution { public:int search(vector<int>& nums, int target) {int left 0;int right nums.size() - 1;while (left <…

安装dalton过程中出现的pcre问题

在前面文章中&#xff0c;基于多种流量检测引擎识别pcap数据包中的威胁&#xff0c;并没有详细的说明dalton的安装。由于dalton提供了脚本./start-dalton.sh &#xff0c;执行之后会自动的安装各种依赖以及suricata&#xff0c;zeek&#xff0c;snort的容器环境。但是在实际执行…

Vue2版本封装公共echarts的监听方法

#注意 &#xff1a; 因为一个页面有多个图表&#xff0c;所以封装一个公共的js文件&#xff0c;方便后续使用。 适用于Vue2版本&#xff0c;粘贴即用即可。 1、echartsMixin.js文件如下 // echartsMixin.js import echarts from echartsexport default {data() {return {myC…

python实战之PyQt5桌面软件

一. 演示效果 二. 准备工作 1. 使用pip 下载所需包 pyqt5 2. 下载可视化UI工具 QT Designer 链接&#xff1a;https://pan.baidu.com/s/1ic4S3ocEF90Y4L1GqYHPPA?pwdywct 提取码&#xff1a;ywct 3. 可视化UI工具汉化 把上面的链接打开, 里面有安装和汉化包, 前面的路径还要看…

首页HF粗排模型优化

[work rus_env]$ pwd /home/work/xx/du-rus/offline-tools/du_rus/rus_env [work rus_env]$ python buildenv_rus.py 5a0e771e938a486df3b8b3e1cde1a39c2006882d 5f3241963a3e39a8e1eae05d7075fc5b9278a7c7 打开日志级别 [workxx conf]$ vim /home/work/xx/du-rus/du_rus_…

【智能家居项目】RT-Thread版本——DHT11获取温湿度 | MQTT上传到服务器 | 服务器控制外设

&#x1f431;作者&#xff1a;一只大喵咪1201 &#x1f431;专栏&#xff1a;《智能家居项目》 &#x1f525;格言&#xff1a;你只管努力&#xff0c;剩下的交给时间&#xff01; 这篇文章中&#xff0c;本喵将使用RT-Thread Studio来实现这个智能家居的项目&#xff0c;最终…

Xline command 去重机制(二)—— RIFL 实现

在上一篇文章Xline command 去重机制&#xff08;一&#xff09;—— RIFL 介绍中&#xff0c;我们从 command 去重机制的契机开始&#xff0c;介绍了去重的必要性以及目前 Xline 的去重机制存在的一些问题&#xff0c;同时讲解了 RIFL(Reusable Infrastructure for Linearizab…

华清远见STM32U5开发板助力2024嵌入式大赛ST赛道智能可穿戴设备及IOT选题项目开发

第七届&#xff08;2024&#xff09;全国大学生嵌入式芯片与系统设计竞赛&#xff08;以下简称“大赛”&#xff09;已经拉开帷幕&#xff0c;大赛的报名热潮正席卷而来&#xff0c;高校电子电气类相关专业&#xff08;电子、信息、计算机、自动化、电气、仪科等&#xff09;全…

大话设计模式之策略模式

策略模式是一种行为设计模式&#xff0c;它允许在运行时选择算法的行为。这种模式定义了一族算法&#xff0c;将每个算法都封装起来&#xff0c;并且使它们之间可以互相替换。 在策略模式中&#xff0c;一个类的行为或其算法可以在运行时改变。这种模式包含以下角色&#xff1…