day03作业

---恢复内容开始---

1.+、-、*、/、%、++、--

①正号;②加法运算;③连接符

除法是两个数相除所得的结果,取余是除法操作的余数。

++前置表示现将一个数自加然后进行赋值,++后置表示先赋值后进行自加,--同理。

2.基本赋值运算符:=

扩展赋值运算符:+=、-=、*=、/=、%=

+=是将运算符两侧的数相加后得到结果

3.有问题。s是short类型,1是int类型,s+1的返回值为int,从int转换成short类型会有损失。用扩展赋值运算符进行运算。

没有问题。

4.==、!=、>、<、>=、<=

关系运算符输出的是布尔类型的值true和false。

5.&、|、^、!、&&、||

&是并且,遇false则false;&&是短路与,如果运算符左边是false那么右边就不执行。

|是或者,有true则true;||是短路或,如果运算符左边是true那么右边就不执行。

6.一个数被另一个数位异或两次,该数本身不变。

7.int temp = a;

int a = b;

int b = temp;

8.(关系表达式)?表达式1:表达式2

先对关系表达式进行判断,如果结果是true,输出表达式1,如果结果是false,输出表达式2.

9.

class Demo1_Operater {
public static void main(String[] args) {
int x = 10;
int y = 20;
boolean b = (x == y)? true : false;
System.out.println(b);
}
}

class Demo1_Operater {
public static void main(String[] args) {
int x = 10;
int y = 20;
int z = (x > y)? x : y;
System.out.println(z);
}
}

class Demo1_Operater {
public static void main(String[] args) {
int x = 10;
int y = 20;
int z = 30;
int temp = (x > y)? x : y;
int max = (temp > z)? temp : z;
System.out.println(max);
}
}

10.顺序结构

选择结构

循环结构

11.三种

格式1:

if(比较表达式){

语句体;

}

注意事项:*比较表达式无论简单还是复杂,结果必须是boolean类型。

*if语句控制的语句体如果是一条语句,大括号可以省略;如果是多条语句,就不能省略,建议永远不要省略。

*一般来说:有左大括号就没有分号,有分号就没有左大括号。

只有一个判断条件时使用。

格式2:

if(比较表达式){

语句体1;

}else{

语句体2;

}

注意事项:else后面没有比较表达式,只有if后面有。

有两个判断条件时使用。

格式3:

if(比较表达式1){

语句体1;

}else if(比较表达式2){

语句体2;

}else if(比较表达式3){

语句体3;

}

...

else{

语句体n+1;

}

注意事项:最后一个else可以省略,但是建议不要省略,可以对范围外的错误值提示。

有两个以上的判断条件时使用。

12.

1.x=2 y=2

2.x=2 y=1

3.x=7 y=2

4.x=7 y=1

5.b

13.

import java.util.Scanner;
class Grade {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入成绩:");
int grade = sc.nextInt();
if (grade >= 90 && grade <= 100) {
System.out.println("A等");
}else if (grade >= 80 && grade <= 89) {
System.out.println("B等");
}else if (grade >= 70 && grade <= 79) {
System.out.println("C等");
}else if (grade >= 60 && grade <= 69) {
System.out.println("D等");
}else if (grade >= 0 && grade < 60) {
System.out.println("E等");
}else{
System.out.println("请输入正确的成绩");
}
}
}

14.

switch(表达式){

case 值1:

语句体1;

break;

case 值2:

语句体2;

break;

...

default:

语句体n+1;

break;

}

switch:说明这是switch语句

表达式:可以是byte int short char

JDK5以后可以是枚举

JDK7以后可以是字符串

case:后面的值就是要和表达式进行比较的值

break:表示程序到这里中断,跳出switch语句

default:如果所有的情况都不匹配,就执行这里,相当于if语句中的else

a:case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的

b:default可以省略吗?

*可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。

*特殊情况:*case就可以把值固定。

*A,B,C,D

c:break可以省略吗?

*最后一个可以省略,其他最好不要省略

*会出现一个现象:case穿透

*最终建议不要省略

d:default一定要在最后吗?

*不是,可以在任意位置,但是建议在最后。

e:switch语句的结束条件

*a:遇到break就结束了

*b:执行到switch的右大括号就结束了

15.y=5

先执行case 3和case 4没有符合的跳转到default对y执行一次自加,由于default没有break,发生case穿透,继续执行case 3,再进行一次自加后有break跳出switch程序,所以y一共进行了两次自加,结果是5.

16.

import java.util.Scanner;
class Week {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数:");
int x = sc.nextInt();
switch (x) {
case 1:
System.out.println("星期1");
break;
case 2:
System.out.println("星期2");
break;
case 3:
System.out.println("星期3");
break;
case 4:
System.out.println("星期4");
break;
case 5:
System.out.println("星期5");
break;
case 6:
System.out.println("星期6");
break;
case 7:
System.out.println("星期7");
break;
default:
System.out.println("请输入正确的日期");
break;
}
}
}

import java.util.Scanner;
class Week {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数:");
int x = sc.nextInt();
if (x == 1) {
System.out.println("星期1");
}else if (x == 2) {
System.out.println("星期2");
}else if (x == 3) {
System.out.println("星期3");
}else if (x == 4) {
System.out.println("星期4");
}else if (x == 5) {
System.out.println("星期5");
}else if (x == 6) {
System.out.println("星期6");
}else if (x == 7) {
System.out.println("星期7");
}else{
System.out.println("请输入正确的日期");
}
}
}

---恢复内容结束---

上一篇:【转】FFmpeg 基本用法


下一篇:【洛谷6943】[ICPC2018 WF] Conquer The World(模拟费用流)