Day02-课后练习2-参考答案(数据类型和运算符)

文章目录

  • 巩固题
    • 1、案例:今天是周2,100天以后是周几?
    • 2、案例:求三个整数x,y,z中的最大值
    • 3、案例:判断今年是否是闰年
    • 4、分析如下代码的计算结果
    • 5、分析如下代码的计算结果
    • 6、分析如下代码的计算结果
    • 7、分析如下代码的计算结果
    • 8、如何用最有效的的方法计算2乘以8

巩固题

1、案例:今天是周2,100天以后是周几?

  1. 定义一个int类型变量week,赋值为2
  2. 修改week的值,在原值基础上加上100
  3. 修改week的值,在原值基础上模以7
  4. 输出结果,在输出结果的时候考虑特殊值,例如周日

在这里插入图片描述

参考答案:

public class Homework1 {public static void main(String[] args) {int week = 2;week += 100;   // 星期102week %= 7;System.out.println("今天是周2,100天以后是周" + (week == 0 ? "日" : week));}
}

2、案例:求三个整数x,y,z中的最大值

  1. 定义三个int类型变量,x,y,z,随意赋值整数值
  2. 定义一个int类型变量max,先存储x与y中的最大值(使用三元运算符)
  3. 再次对max赋值,让它等于上面max与z中的最大值(使用三元运算符)
  4. 输出结果

在这里插入图片描述

参考答案:

public class Homework2 {public static void main(String[] args) {int x = 3;int y = 4;int z = 1;int max = x > y ? x : y;max = max > z ? max : z;System.out.println(x + "," + y + "," + z + "中的最大值是:" + max);}
}

3、案例:判断今年是否是闰年

  1. 定义一个int类型变量year,赋值为今年年份值
  2. 定一个一个boolean类型变量,用来保存这个年份是否是闰年的结果
  3. 输出结果

提示闰年的判断标准是:

​ 1)年份year,可以被4整除,但不可以被100整除

​ 2)或者,可以被400整除

参考答案:

public class Homework8 {public static void main(String[] args) {int year = 2022;boolean result = year%4==0 && year%100!=0 || year%400==0;System.out.println(year  + "年" + (result ? "是闰年" : "不是闰年"));}
}

4、分析如下代码的计算结果

int i = 1;
i = (int)(i * 0.2); // i *= 0.2;  
i++;
System.out.println("i=" + i);

参考答案:

public class Homework4 {public static void main(String[] args) {int i = 1;i *= 0.2;// i = (int)(i*0.2) = 0;i++;System.out.println("i=" + i);//1}
}

5、分析如下代码的计算结果

int i = 2;
i = i * i++; // i *= i++;  
// int i1 = i++;  i1=2,i=3
// i = 2 *  2int j = 2;
j = j * (j+1);// j *= j+1; 
//  2 * 3int k = 2;
k = k * ++k; // k *= ++k;
// int k1 = ++k; k1=3,k=3
//  2 * 3System.out.println("i=" + i);
System.out.println("j=" + j);
System.out.println("k=" + k);

参考答案:

public class Homework5 {public static void main(String[] args) {int i = 2;i *= i++;/*i = i * (i++);=右边从左往右解析表达式(1)取i的值2(2)取i的值2(3)i自增(4)2*2=4(5)i=4*/int j = 2;j *= j+1;/*j = j * (j + 1 );=右边从左往右解析表达式(1)取j的值2(2)取j的值2(3)算j+1=3(4)2*3=6(5)j=6*/int k = 2;k *= ++k;/*k = k * (++k);=右边从左往右解析表达式(1)取k的值2(2)k自增(3)取k的值3(4)2*3=6(5)k=6*/System.out.println("i=" + i);//4System.out.println("j=" + j);//6System.out.println("k=" + k);//6}
}

6、分析如下代码的计算结果

int a = 3;
int b = 1;System.out.println((a=b) ? "Equal" : "Not Equal");

参考答案:

public class Homework6 {public static void main(String[] args) {int a = 3;int b = 1;System.out.println((a=b) ? "Equal" : "Not Equal");//编译报错,因为=是赋值运算,不是==比较运算,而a和b是int类型,a=b的结果是int类型,不能直接作为条件}
}

7、分析如下代码的计算结果

int a = 8, b = 3;
System.out.println(a>>>b);//1
System.out.println(a>>>b | 2);//3

参考答案:

public class Homework7 {public static void main(String[] args) {int a = 8, b = 3;System.out.println(a>>>b);//1/*8的二进制:00000000 00000000 00000000 000010008>>>3:   00000000 00000000 00000000 00000001*/System.out.println(a>>>b | 2);//3/*8的二进制:00000000 00000000 00000000 000010008>>>3:   00000000 00000000 00000000 000000012的二进制:00000000 00000000 00000000 00000010a>>>b | 2:00000000 00000000 00000000 00000011*/}
}

8、如何用最有效的的方法计算2乘以8

参考答案:乘以2的几次方,相当于左移几位

public class Homework8 {public static void main(String[] args) {System.out.println(2<<3);}
}

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

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

相关文章

最新即时通讯社交APP源码 支持H5群聊、红包转账和朋友圈

(购买本专栏可免费下载栏目内所有资源不受限制,持续发布中,需要注意的是,本专栏为批量下载专用,并无法保证某款源码或者插件绝对可用,介意不要购买) 功能简介 我们的即时通讯应用提供了完备的IM功能,支持文字、表情、图片、语音等多种聊天方式,包括单聊、群聊、已读…

不是能画原型就叫会“快速原型”的,好吗?

原型设计作为当前软件、互联网行业最有效的信息传达方式之一&#xff0c;是所有产品经理、交互设计师、UX设计师必须掌握的技能。掌握原型设计同样也是UI设计师、开发工程师甚至运营、市场人员提高自身竞争力的加分项。并且&#xff0c;学习原型设计的难度低&#xff0c;上手快…

【算法专题】贪心算法

贪心算法 贪心算法介绍1. 柠檬水找零2. 将数组和减半的最少操作次数3. 最大数4. 摆动序列(贪心思路)5. 最长递增子序列(贪心算法)6. 递增的三元子序列7. 最长连续递增序列8. 买卖股票的最佳时机9. 买卖股票的最佳时机Ⅱ(贪心算法)10. K 次取反后最大化的数组和11. 按身高排序12…

Ajax入门与使用

目录 ◆ AJAX 概念和 axios 使用 什么是 AJAX&#xff1f; 怎么发送 AJAX 请求&#xff1f; 如何使用axios axios 函数的基本结构 axios 函数的使用场景 1 没有参数的情况 2 使用params参数传参的情况 3 使用data参数来处理请求体的数据 4 上传图片等二进制的情况…

Linux操作系统权限相关问题(一站式速通权限)

一、sudo命令 sudo yum install -y sl sudo命令的作用 不切换用户&#xff0c;就想让普通用户以root的身份&#xff0c;执行对应的指令 输入密码时&#xff0c;输入的是自己普通用户的密码&#xff0c;而不是root的密码&#xff01;&#xff01;&#xff01; sudo可以进行…

React 面试题

1、组件通信的方式 父组件传子组件&#xff1a;通过props 的方式 子组件传父组件&#xff1a;父组件将自身函数传入&#xff0c;子组件调用该函数&#xff0c;父组件在函数中拿到子组件传递的数据 兄弟组件通信&#xff1a;找到共同的父节点&#xff0c;用父节点转发进行通信 …

翻译: GPT-4 Vision通过量身定制的推荐来增强应用的用户体验 升级Streamlit五

GPT-4 Vision 系列: 翻译: GPT-4 with Vision 升级 Streamlit 应用程序的 7 种方式一翻译: GPT-4 with Vision 升级 Streamlit 应用程序的 7 种方式二翻译: GPT-4 Vision静态图表转换为动态数据可视化 升级Streamlit 三翻译: GPT-4 Vision从图像转换为完全可编辑的表格 升级St…

人工智能(pytorch)搭建模型23-pytorch搭建生成对抗网络(GAN):手写数字生成的项目应用

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能(pytorch)搭建模型23-pytorch搭建生成对抗网络(GAN):手写数字生成的项目应用。生成对抗网络&#xff08;GAN&#xff09;是一种强大的生成模型&#xff0c;在手写数字生成方面具有广泛的应用前景。通过生成…

Visual Studio 2022 C++ 生成dll或so文件在windows或linux下用C#调用

背景 开发中我们基本使用windows系统比较快捷&#xff0c;但是部署的时候我们又希望使用linux比较便宜&#xff0c;硬件产商还仅提供了c sdk&#xff01;苦了我们做二次开发的码农。 方案 需要确认一件事&#xff0c;目前c这门语言不是跨平台的 第一个问题【C生成dll在window…

【Linux】—— 信号的产生

本期&#xff0c;我们今天要将的是信号的第二个知识&#xff0c;即信号的产生。 目录 &#xff08;一&#xff09;通过终端按键产生信号 &#xff08;二&#xff09;调用系统函数向进程发信号 &#xff08;三&#xff09;由软件条件产生信号 &#xff08;四&#xff09;硬件…

【MySQL】学习如何通过DQL进行数据库数据的基本查询

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-KvH5jXnPNsRtMkOC {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

【EI会议征稿通知】2024年第四届激光,光学和光电子技术国际学术会议(LOPET 2024)

2024年第四届激光&#xff0c;光学和光电子技术国际学术会议(LOPET 2024) 2024 4th International Conference on Laser, Optics and Optoelectronic Technology 2024年第四届激光&#xff0c;光学和光电子技术国际学术会议(LOPET 2024)将于2024年5月17日-19日在中国重庆举行。…