From 099b622546ebb22ea19e0e045eeb3831f65e2863 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B4=94=E7=A8=8B=E7=91=9E?= <2425059626@qq.com> Date: Fri, 31 Mar 2023 23:37:48 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=80=E6=AC=A1=E5=92=8C=E7=AC=AC?= =?UTF-8?q?=E4=BA=8C=E6=AC=A1=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...13\347\221\236\344\275\234\344\270\232.md" | 161 ++++++++++++++++ ...14\346\254\241\344\275\234\344\270\232.md" | 172 ++++++++++++++++++ 2 files changed, 333 insertions(+) create mode 100644 "32 \345\264\224\347\250\213\347\221\236/03.30\345\264\224\347\250\213\347\221\236\344\275\234\344\270\232.md" create mode 100644 "32 \345\264\224\347\250\213\347\221\236/3.31\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232.md" diff --git "a/32 \345\264\224\347\250\213\347\221\236/03.30\345\264\224\347\250\213\347\221\236\344\275\234\344\270\232.md" "b/32 \345\264\224\347\250\213\347\221\236/03.30\345\264\224\347\250\213\347\221\236\344\275\234\344\270\232.md" new file mode 100644 index 0000000..b6cca35 --- /dev/null +++ "b/32 \345\264\224\347\250\213\347\221\236/03.30\345\264\224\347\250\213\347\221\236\344\275\234\344\270\232.md" @@ -0,0 +1,161 @@ +**1、判断一个字符数据是否是数字字符 ** + +**分析:** + +​ 1、需要判断一个字符是否是数字字符,首先需要提供一个字符数据 + +​ 2、字符是否为数字字符: 数字字符的范围 0 - 9 之间都属于数字字符,因此提供的字符只要大于或等于字符0,并且还要下于或等于字符9即可。 + +​ 3、判断完成之后,打印判断的结果。 + + + +```java +Scanner sc = new Scanner(System.in); +System.out.println("请输入数字"); +int s = sc.nextInt(); +boolean a = s >=0 && s<=9; +System.out.println(a); + +``` + +**2、判断一个字符数据是否是字母字符** + +**分析:** + +​ 1、需要判断一个字符是否是字母字符,首先需要提供一个字符数据 + +​ 2、字符是否为字母字符: 数字字符的范围 a - z 或者 A - Z 之间都属于字母字符,因此提供的字符只要大于或等于a,并且还要下于或等于z 或者 大于或等于A,并且还要下于或等于Z + +​ 3、判断完成之后,打印判断的结果。 + + + +**3、判断指定的年份是否为闰年,请使用键盘录入** + +**分析:** + +​ 1、闰年的判断公式为:能被4整除,但是不能被100整除 或者 能被400整除 + +​ 2、首先需要提供一个需要判断的年份,判断完成之后,打印判断的结果。 + + + +```java +Scanner sca = new Scanner(System.in); +System.out.println("请输入年份"); +int d = sca.nextInt(); +if (d%4==0 && d%100!=0 ||d%400==0){ + System.out.println("是闰年");} +else{ + System.out.println("不是闰年"); +} +``` + + + +**4、判断一个数字是否为水仙花数,请使用键盘录入** + +水仙花是指3位数字,表示的是每位上的数字的3次幂相加之后的和值和原数相等,则为水仙花数, + +**分析:** + +​ 如:153 ---> 1×1×*1 + 5*×5×*5 + 3×*3×3 = 153; 就是水仙花数 + +​ 1、首先需要提供一个需要判断的3位数字,因此需要一个数值 + +​ 2、判断的过程 + +​ a) 将3位数字的每一位上的数字拆分下来 + +​ b) 计算每位数字的3次幂之和 + +​ C) 用和值 和 原来的数字进行比较 + +​ D) 打印判断的比较结果即可 + + + +```java +Scanner scc = new Scanner(System.in); +System.out.println("请输入一个数"); +int g = scc.nextInt(); +if(g < 100 || g > 999){ + System.out.println(g+"这不是一个三位数"); +}else{ + int ge = g % 10; + int shi = g/10%10; + int bai = g/100; + if (ge*ge*ge+shi*shi*shi+bai*bai*bai == g){ + System.out.println(g+"这是一个水仙花数"); + }else{ + System.out.println(g+"这不是水仙花数"); + } +``` + + + +**5、判断一个5位数字是否为回文数,使用键盘录入** + +五位数的回文数是指最高位和最低位相等,次高位和次低位相等。如:12321  23732  56665 + +**分析:** + +​ 1、首先需要提供一个需要判断的5位数字,因此需要一个数值 + +​ 2、判断的过程 + +​ a) 将5位数字的万、千、十、个位数拆分出来 + +​ b) 判断比较万位和个位 、 千位和十位是否相等 + +​ 3、判断完成之后,打印判断的结果。 + +```java +Scanner scq = new Scanner(System.in); +System.out.println("请输入一个数"); +int y = scq.nextInt(); + +int ge1 = y%10; +int shi1 = y/10%10; +int bai1 = y/100; +int qian = y/1000%10; +int wan = y/10000; +``` + +```java +public class qa { + public qa() { + } + + public static void main(String[] args) { + double man = 184.68; + double woman = 164.1855; + System.out.println("儿子的身高是" + man + " 女儿的身高是" + woman); + int hongchayl = 21; + int lvchayl = 24; + int a = hongchayl * 2 + 3; + int b = lvchayl * 2; + if (a == b) { + System.out.println("正确"); + } else { + System.out.println("错误"); + } + + int yu = true; + int hua = true; + int mi = true; + double zheko = 28.0; + double youhu = 27.0; + if (zheko > youhu) { + System.out.println("最少要花" + zheko + "元"); + } else { + System.out.println("最少要花" + youhu + "元"); + } + + } +} + + +``` + diff --git "a/32 \345\264\224\347\250\213\347\221\236/3.31\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232.md" "b/32 \345\264\224\347\250\213\347\221\236/3.31\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232.md" new file mode 100644 index 0000000..41fae79 --- /dev/null +++ "b/32 \345\264\224\347\250\213\347\221\236/3.31\347\254\254\344\272\214\346\254\241\344\275\234\344\270\232.md" @@ -0,0 +1,172 @@ +```java +public class cui { + public static void main(String[] args) { + byte b1 = 10; + byte b2 = 20; + byte b3= (byte) (b1+b2); + System.out.println(b1+b2); + System.out.println(b3); + + //(2)先声明两个short类型的变量s1,s2,并分别赋值为1000和2000,求s1和s2变量的和,并将结果保存在short类型的变量s3中,最后输出s3变量的值 + short s1=1000; short s2=2000; + float s3 = s1 + s2; + System.out.println(s3); + + +//(3)先声明1个char类型的变量c1赋值为'a',再声明一个int类型的变量num赋值为5,求c1和num变量的和,并将结果将结果保存在char类型的变量letter中,最后输出letter变量的值。 + char c1='a'; int num=5; + char letter= (char) (c1+num); + System.out.println(letter); +//(4)先声明两个int类型的变量i1,i2,并分别赋值5和2,求i1和i2的商,并将结果保存在double类型的变量result中,最后输出result变量的值。如何得到结果2.5呢? + int i1=5; int i2=2; + double result= (double)i1 / (double)i2 ; + System.out.println(result); + + + + //1. 定义两个int类型变量a1和a2,分别赋值10,11,判断变量是否为偶数,拼接输出结果 + int a1=10; int a2=11; + if (a1%2==0){ + System.out.println(a1 +"是偶数"); + + }else { + System.out.println("奇数"); + + } + + //2. 定义两个int类型变量a3和a4,分别赋值12,13,判断变量是否为奇数,拼接输出结果 + //案例:为抵抗洪水,战士连续作战89小时,编程计算共多少天零多少小时? + int time = 89; + int day = 24; + int day1 = time/day; + int house = time%day; + System.out.println("战士抗洪89小时用了"+day1+"天零"+house+"小时"); + + + //1. 定义一个int类型变量hours,赋值为89 + //2. 定义一个int类型变量day,用来保存89小时中天数的结果 + //3. 定义一个int类型变量hour,用来保存89小时中不够一天的剩余小时数的结果 + //4. 输出结果 + + //## 4、案例:今天是周2,100天以后是周几? + //1. 定义一个int类型变量week,赋值为2 + //2. 修改week的值,在原值基础上加上100 + //3. 修改week的值,在原值基础上模以7 + //4. 输出结果,在输出结果的时候考虑特殊值,例如周日 + int week=2; + week+=100; + week=week%7; + System.out.println("100天后星期"+week); +// 5、案例:求三个整数x,y,z中的最大值 + + + + // 1. 定义三个int类型变量,x,y,z,随意赋值整数值 + // 2. 定义一个int类型变量max,先存储x与y中的最大值(使用三元运算符) + // 3. 再次对max赋值,让它等于上面max与z中的最大值(使用三元运算符) + //4. 输出结果 + int x=1; + int y=2; + int z=3; + int max=(x>y)?x:y; + System.out.println("max="+max); + + //、案例:判断今年是否是闰年 + //1. 定义一个int类型变量year,赋值为今年年份值 + //2. 定一个一个boolean类型变量,用来保存这个年份是否是闰年的结果 + //3. 输出结果 + Scanner sr = new Scanner(System.in); + int a; + System.out.println("请输入年份:"); + a = sr.nextInt(); + if (((a%4 ==0)&&(a%100 !=0))||(a%400 == 0)){ + System.out.println("今年是闰年"); + }else { + System.out.println("今年不是闰年"); + } +//7、华氏度转摄氏度 + + // 案例:小明要到美国旅游,可是那里的温度是以华氏度为单位记录的。它需要一个程序将华氏温度(80度)转换为摄氏度,并以华氏度和摄氏度为单位分别显示该温度。 + //1. 定义一个double类型变量hua,存储华氏温度80 + //2. 定义一个double类型变量she,存储摄氏温度,根据公式求值 + //3. 输出结果 + double hua=80; + double she=(hua-32)/1.8; + System.out.println(she); + + + + } +} +``` + + + +# 拔高题 + +## 第一题 + +```java +如下代码的计算结果是: +int i = 1; +i *= 0.2; +i++; +System.out.println("i=" + i); +i=1 +``` + +## 第二题 + +```java +如下代码的运算结果是: +int i = 2; +i *= i++; + +int j = 2; +j *= j+1; + +int k = 2; +k *= ++k; + +System.out.println("i=" + i); +System.out.println("j=" + j); +System.out.println("k=" + k); +i=4 +j=4 +k=6 +``` + +## 第三题 + +```java +如下代码的运算结果是: +int a = 3; +int b = 1; +if(a = b){ + System.out.println("Equal"); +}else{ + System.out.println("Not Equal"); +} + +Not Equal +``` + +## 第四题 + +```java +如下代码的运算结果是: +int a = 8, b = 3; +System.out.println(a>>>b); +System.out.println(a>>>b | 2); +1 +3 +``` + +## 第五题 + +如何用最有效的的方法计算2乘以8 + +```java + System.out.println(2*8); +``` + -- Gitee