第四课:逻辑控制

news2024/9/23 17:24:07

1.分支语句

(1)if语句

练习

1.判断一个数字是奇数还是偶数

public static void main(String[] args) {
        int a = 10;
        if (a % 2 == 1){
            System.out.println("a是奇数");
        }
        else{
            System.out.println("a是偶数");
        }
            
}

 2.判断一个年份是否为闰年

普通闰年:公历年份为4的倍数但不是100的倍数的年份

世纪闰年:公历年份是整百数的,必须是400的倍数

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int year = scanner.nextInt();

        if (year % 100 == 0){
            if (year % 400 == 0){
                System.out.println("世纪闰年");
            }
            else{
                System.out.println("不是闰年");
            }
        }
        else{
            if (year % 4 == 0){
                System.out.println("普通闰年");
            }
            else {
                System.out.println("不是闰年");
            }
        }
    }

Java的输入需要一个工具,要导入

import java.util.Scanner;//导包

这个可以不用手写,输入Scan,点击Scanner系统自动导包

 代码风格

// 风格1-----> 推荐
int x = 10;
if (x == 10) {
// 语句1
} else {
// 语句2
}

 (2)switch语句

switch(表达式){
case 常量值1:{
    语句1;
    break;
}
case 常量值2:{
    语句2;
    break;
}

...
default:{
    内容都不满足时执行语句;
    break;
}
}

不能做switch参数的类型:long,double,float,boolean

2.循环结构

while(循环条件){
循环语句;
}

条件恒为true那么就是死循环

int a = 1;//循环的初始条件
while (a <= 10){  //循环的判断条件
    System.out.println(a);
    a++;//循环的步进
}

练习:

1.1~100的和

//1~100的和
    public static void main(String[] args) {
        int a = 1;
        int sum = 0;
        while (a <= 100){
            sum += a;
            a++;
        }
        System.out.println(sum);
        //1~100奇数的和
        a = 1;
        int sumOdd = 0;
        while (a <= 100){
            sumOdd += a;
            a += 2;
        }
        System.out.println(sumOdd);
        //1~100偶数的和
        int sumEve = 0;
        a = 2;
        while (a <= 100){
            sumEve += a;
            a += 2;
        }
        System.out.println(sumEve);
    }
2.计算 1! + 2! + 3! + 4! + 5!
    public static void main(String[] args) {
        int num = 1;
        int sum = 0;
// 外层循环负责求阶乘的和
        while (num <= 5) {
            int ret = 1;
            int tmp = 1;
// 里层循环负责完成求阶乘的细节.
            while (tmp <= num) {
                ret *= tmp;
                tmp++;
            }
            sum += ret;
            num++;
        }
        System.out.println("sum = " + sum);
    }

 3.找100~200之间第一个3的倍数

    public static void main(String[] args) {
        int num = 100;
        while (num <= 200) {
            if (num % 3 == 0) {
                System.out.println(num);
                break;
            }
            num++;
        }
    }

调试:直接在需要的语句旁边点一下打断点就行

4.找到1~100之间既能被3整除,也能被5整除的数字

        int  i = 1;
        while(i <= 100){
            if(i % 3 == 0 && i % 5 == 0){
                System.out.println(i);
            }
            i++;
            continue;
        }

 for循环,在idea里面打fori直接帮你列好

 do while 循环

3.输入输出 

⚠关于输出方法

 ⚠关于输入方法

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你的姓名:");
        String name = sc.nextLine();//如果是next在遇到空格时就只输出空格前面的内容而已
        System.out.println("请输入你的年龄:");
        int age = sc.nextInt();
        System.out.println("请输入你的工资:");
        float salary = sc.nextFloat();
        System.out.println("你的信息如下:");
        System.out.println("姓名: "+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary);
        sc.close(); // 注意, 要记得调用关闭方法
    }

如果年龄和姓名交换位置

在输入时,系统不给你输入姓名的机会

因为在输入年龄后按的回车被当作字符串输入到姓名里面了,所以姓名被自动跳过

        System.out.println("请输入你的年龄:");
        int age = sc.nextInt();
        sc.nextLine();//加这一句就行
        System.out.println("请输入你的姓名:");
        String name = sc.nextLine();

 循环读取n个数字

 while(sc.hasNextInt()){
            int tmp = sc.nextInt();
        }

终止输入在输入框内按CTRL+D

4.猜数字游戏

系统自动生成一个随机整数 (1-100), 然后由用户输入一个猜测的数字 . 如果输入的数字比该随机数小 , 提示 " 低 了", 如果输入的数字比该随机数大 , 提示 " 高了 " , 如果输入的数字和随机数相等 , 则提示 " 猜对了 " .
import java.util.Random;
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Random random = new Random();// 每次根据当前的时间生成随机数
        //如果在括号里加数字,那就根据这个数字来生成随机数
        int randNum = random.nextInt(100);//[0,100)
        //System.out.println("生成的随机数字:"+ randNum); 可以看系统给你生成的数字
        Scanner scanner = new Scanner(System.in);
        while (true){
            System.out.println("请输入要猜的数字:");
            int num = scanner.nextInt();
            if (num > randNum){
                System.out.println("猜大了");
            }else if(num < randNum){
                System.out.println("猜小了");
            }else{
                System.out.println("猜对了");
                break;
            }
        }
    }
}

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

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

相关文章

Django学习记录:初步认识django以及实现了简单的网页登录页面的前后端开发

Django学习记录&#xff1a;初步认识django以及实现了简单的网页登录页面的前后端开发 1、可以先删去template文件夹&#xff0c;并在setting里面删掉这一行 2、在pycharm中创建app&#xff1a; 3、启动app&#xff1a;编写URL与视图函数关系【urls.py】 ​ 编写视图函数【vi…

HCIA-datacom数通题库和录播视频资料

HCIA-Datacom&#xff0c;是华为数通认证的初级考试&#xff0c;培训与认证具备数通基础通用知识和技能水平的工程师&#xff0c;只是入门了解数通的一些基础通用知识&#xff0c;适用于小白了解和学习数通知识点起点。 个人建议还是有必要考的&#xff0c;如果在企业考试考试…

Java版本spring cloud 工程项目管理系统源码

​ ​工程项目管理系统是指从事工程项目管理的企业&#xff08;以下简称工程项目管理企业&#xff09;受业主委托&#xff0c;按照合同约定&#xff0c;代表业主对工程项目的组织实施进行全过程或若干阶段的管理和服务。 如今建筑行业竞争激烈&#xff0c;内卷严重&#xff0c…

助力保险行业数字化创新,麒麟信安参展2023中国财险科技应用高峰论坛

2023年7月27日&#xff0c;由中科软科技股份有限公司主办的“中国财险科技应用高峰论坛”在北京古北水镇成功举办。作为享誉中国保险科技界的盛会&#xff0c;本次活动以“数智保险 创新未来”主题&#xff0c;汇聚全国数百位保险公司主管领导、资深保险行业信息化专家&#xf…

在PHP8中检测数据类型-PHP8知识详解

在PHP 8中&#xff0c;可以使用多种方法来检测数据类型。以下是常用的四种方法&#xff1a;使用 gettype() 函数、使用 is_* 系列函数、使用 get_debug_type() 函数、使用 get_class() 函数。 一、使用 gettype() 函数 gettype() 函数返回给定变量的数据类型。例如&#xff1a…

【Git系列】IDEA集成Git

&#x1f433;IDEA集成Git &#x1f9ca;1. idea配置git&#x1f9ca;2. idea添加暂存区和提交&#x1fa9f;创建文件&#x1fa9f;将整个项目添加到暂存区&#x1fa9f;提交到本地仓库&#x1fa9f;查看控制台&#xff0c;显示提交的信息&#x1fa9f;修改文件&#xff0c;再次…

matlab编程实践14、15

目录 数独 "四独"游戏 解的存在和唯一性 算法 常微分方程 数独 采用蛮力试凑法来解决数独问题。&#xff08;采用单选数&#xff0c;以及计算机科学技术中的递推回溯法&#xff09; 以上的数独是图14-2的两个矩阵的和&#xff0c;左侧的矩阵可以由kron和magic函…

软件测试之性能测试实施流程

软件测试之性能测试实施流程&#xff1a; 1.测试需求分析 测试需求分析是整个性能测试的基础&#xff0c;在这一阶段测试负责人要和项目干系人进行沟通&#xff0c;同时手机各种项目资料&#xff0c;尤其要搞清楚用户对待性能测试的核心需求。 测试需求分析阶段的主要任务是确…

小红书2020校招测试开发后端笔试题卷三

//完全背包求组合数 #include <iostream> #include<vector> #include<set> #include<map> #include<algorithm> using namespace std; int value[300]; // vector<int>vis; // vector<int>vis1; map<vector<int>,int>m…

Verilog语法学习——LV3_奇偶校验

LV3_奇偶校验 题目来源于牛客网 [牛客网在线编程_Verilog篇_Verilog快速入门 (nowcoder.com)](https://www.nowcoder.com/exam/oj?page1&tabVerilog篇&topicId301) 题目 题目描述&#xff1a; 现在需要对输入的32位数据进行奇偶校验,根据sel输出校验结果&#xff0…

【GITHUB】FlipIt – Windows的开源翻页时钟

FlipIt 是一款免费开源的翻页时钟应用&#xff0c;专为 Windows 平台设计。该应用灵感来源于备受喜爱的老牌翻页时钟应用 Fliqlo&#xff0c;后者被公认为经典的翻页时钟屏保。然而&#xff0c;由于 Fliqlo 是基于 Flash 技术开发的&#xff0c;随着微软最近正式禁用 Flash&…

《cuda c编程权威指南》03 - cuda小功能汇总

1. 计时 1.1 linux #include <sys/time.h>double cpuSecond() {struct timeval tp;gettimeofday(&tp, NULL);return ((double)tp.tv_sec (double)tp.tv_usec*1e-6); }// 调用 double start cpuSecond(); kernel_name << <grid, block >> > (ar…

防火墙监控工具

防火墙监控是跟踪在高效防火墙性能中起着关键作用的重要防火墙指标&#xff0c;防火墙监控通常应包括&#xff1a; 防火墙日志监控防火墙规则监控防火墙配置监控防火墙警报监控 防火墙监控服务的一个重要方面是它应该是主动的。主动识别内部和外部安全威胁有助于在早期阶段识…

CompletableFuture使用详解(全网看这一篇就行)

CompletableFuture是jdk8的新特性。CompletableFuture实现了CompletionStage接口和Future接口&#xff0c;前者是对后者的一个扩展&#xff0c;增加了异步会点、流式处理、多个Future组合处理的能力&#xff0c;使Java在处理多任务的协同工作时更加顺畅便利。 一、创建异步任务…

element-tree-line el-tree 添加结构线 添加虚线

概览&#xff1a;给element组件添加上虚线&#xff0c;通过使用插件element-tree-line 参考连接&#xff1a; 参考别人的博客 安装插件&#xff1a; # npm npm install element-tree-line -S # yarn yarn add element-tree-line -S main.js全局注册引入插件&#xff1a; imp…

《翻开收藏夹,拾起行动的力量》

文章目录 每日一句正能量前言分享一道收藏的好题分享一个收藏的便捷技巧积灰这么久&#xff0c;这个当时被收藏的东西对现在的你还有用吗&#xff1f;后记 每日一句正能量 很喜欢一个字&#xff0c;淡&#xff0c;平淡的淡&#xff0c;其实很不平淡&#xff0c;蕴含着很多人生哲…

巨人互动|Google海外户Google SEO关键词工具有哪些?

Google SEO是网站优化的重要工具之一&#xff0c;可以通过优化关键词来提升网站在搜索引擎结果页面的排名。而Google SEO关键词工具是帮助网站管理员和营销人员找到最有效关键词的工具。Google SEO关键词工具是一组被广泛使用的在线工具&#xff0c;可以帮助网站管理员和营销人…

初学者预算不多,千元内新手入门吉他推荐!恩雅X0和VEAZEN费森CLR300怎么样?全方面对比评测!

千元内入门吉他少不了VEAZEN费森CLR300单板系列和恩雅X0 HPL合板系列这两款热门系列&#xff0c;最近很多初学者朋友来私信&#xff0c;咨询这两款琴有什么优缺点&#xff0c;哪一款更值得初学者选购&#xff0c;那么今天&#xff0c;就以它们为本期的评测主角&#xff0c;全方…

阿里用户序列建模SIM

Search-based User Interest Modeling with Lifelong Sequential Behavior Data for Click-Through Rate Prediction 摘要 MIMN是工业解决方案中第一个可以对用户序列长度达到1000的数据进行建模。但MIMN无法精确捕获给定用户兴趣的特定候选项目时&#xff0c;长度为用户行为…

3.playbook剧本二

文章目录 playbook二Roles模块roles模式安装LNMP创建nginxfiles目录handlers目录tasks目录templates目录vars目录 创建mysqltasks目录 创建phpfiles目录handlers目录tasks目录templates目录vars目录 创建LNMP剧本文件 playbook二 Roles模块 角色的作用&#xff1a;把playbook…