1.
2.
3.
4.
5.
6.
位异或^在运算中,同位相同则取0,不同则取1;
其特点在于,一个数据对相同的数据进行两次位异或运算,其值不变。
7.
int x = 73, y = 84;
x = x ^ y;
y = x ^ y;
x = x ^ y;
8.
格式:
(关系表达式) ? (表达式1) : (表达式2)
执行流程:
若关系表达式为真,整个表达式取表达式1的结果,反之则取表达式2的结果。
9.
比较两个数是否相同:
class Compare1 {
public static void main(String[] args) {
int a = 18;
int b = 52;
boolean eq = (a == b) ? true : false;
System.out.println(eq);
}
}
获取两个数中的最大值:
class Max1 {
public static void main(String[] args) {
int a = 56;
int b = 84;
int max = (a > b) ? a : b;
System.out.println(max);
}
}
获取三个数中的最大值:
class Max2 {
public static void main(String[] args) {
int a =45;
int b = 136;
int c = 78;
int temp = (a > b) ? a : b;
int max = (temp > c) ? temp : c;
System.out.println(max);
}
}
10.
流程控制语句的结构分为三类,分别是顺序结构、选择结构和循环结构。
其中,选择结构分为if语句和switch语句;循环结构分为for语句、while语句和do...while语句。
11.
if语句的格式有三种,分别是:
(1)
if(比较表达式){
语句体;
}
计算比较表达式的值为true还是false,若为true则执行语句体,反之则不执行。
(2)
if(比较表达式){
语句体1;
}else{
语句体2;
}
计算比较表达式的值为true还是false,若为true则执行语句体1,反之则执行语句体2。
else后面没有比较表达式。
(3)
if(比较表达式1){
语句体1;
}else if(比较表达式2){
语句体2;
}else if(比较表达式3){
语句体3;
}
...
else{
语句体n+1;
}
计算比较表达式1的值为true还是false,若为true则执行语句体1,if语句结束;
反之则计算比较表达式2的值为true还是false,若为true则执行语句体2,if语句结束;
反之则计算比较表达式3的值为true还是false,若为true则执行语句体3,if语句结束;
……
若比较表达式的值均为false,则执行语句体n+1。
最后一个else可以省略,但不建议省略,因为可以提示范围外的错误值。
12.
第一题
x=2, y=2
第二题
x=2, y=1
第三题
x=7, y=2
第四题
x=7, y=1
第五题
b
13.
//学生成绩等级评定
import java.util.Scanner;
class Grade {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生分数:");
int s = sc.nextInt(); //s for score
char g = 0; //g for grade
if (s > 100) {
g = '?';
}else if (s >= 90 && s <= 100) {
g = 'A';
}else if (s > 80) {
g = 'B';
}else if (s > 70) {
g = 'C';
}else if (s > 60) {
g = 'D';
}else if (s >= 0) {
g = 'E';
}else{
g = '?';
}
System.out.println("学生的成绩等级为" + g);
}
}
14.
switch语句的格式为:
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
case 值3:
语句体3;
break;
...
default:
语句体n+1;
break;
}
首先计算表达式的值,然后和case后面的值进行匹配,若有就执行下面的语句体,若无就执行default控制的语句体n+1。
注意:
switch的表达式可以是基本数据类型,但只能接int或能自动提升为int的数据类型;1.5可以接枚举;1.7可以接String;
case后面的值只能是常量,不能是变量;
default可以省略但不建议;
default可以放在任意位置,但建议放在最后;
最后一个break可以省略,若省略其他则会发生case穿透;
switch语句的结束条件是遇到break或执行到语句的右大括号。
15.
y=5
16.
用if语句判断星期几:
import java.util.Scanner;
class What_day {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("今天是星期几?");
int d = sc.nextInt();
if (d == 1 || d == 2 || d == 3 || d == 4 || d == 5 || d == 6 || d == 7) {
System.out.println("星期" + d);
}else{
System.out.println("输入有误");
}
}
}
用switch语句判断星期几:
import java.util.Scanner;
class What_day {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("今天是星期几?");
int d = sc.nextInt(); //d for day
switch (d){
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
System.out.println("星期" + d);
break;
default:
System.out.println("输错了");
}
}
}