Day03_Java_作业
A:选择题
1、给出以下代码,请问表达式grade==70在以下两条语句中是否获得执行?
boolean flag = false && grade == 70;//第一条语句
boolean flag = false & grade == 70;//第二条语句
A. 语句1、2中均可获得执行
B. 语句1、2中均未获得执行
C. 语句1中获得执行,语句2中未获得执行
D. 语句2中获得执行,语句1中未获得执行
B:简答题
1、 请说明 && 和 & 的区别?
2、 请说明 == 与 = 的区别?
3、 三元运算符的基本格式是什么?执行流程是什么?
4、 使用键盘录入数据的三个步骤是什么?
C:看程序写结果(写出自己的分析理由),程序填空,改错,看程序写结果。
1、写出下面程序运行的结果
int x = 1,y = 1;
if(x++==2 & ++y==2)
{
x =7;
}
System.out.println(“x=”+x+”,y=”+y);
2、写出下面程序运行的结果
int x = 1,y = 1;
if(x++==2 && ++y==2)
{
x =7;
}
System.out.println(“x=”+x+”,y=”+y);
3、写出下面程序运行的结果
int x = 1,y = 1;
if(x++==1 | ++y==1)
{
x =7;
}
System.out.println(“x=”+x+”,y=”+y);
4、写出下面程序运行的结果
int x = 1,y = 1;
if(x++==1 || ++y==1)
{
x =7;
}
System.out.println(“x=”+x+”,y=”+y);
5、写出下面程序运行的结果
boolean b = true;
if(b=false)
System.out.println(“a”);
else if(b)
System.out.println(“b”);
else if(!b)
System.out.println(“c”);
else
System.out.println(“d”);
6、写出下面程序运行的结果
int x = 2,y=3;
switch(x)
{
default:
y++;
case 3:
y++;
break;
case 4:
y++;
}
System.out.println(“y=”+y);
7、写出下面程序运行的结果
int num = 10;
boolean b1 = false;
if( (b1==true) && ( (num+=10) == 20) ){
System.out.println(“We are equal” + num);
} else {
System.out.println(“Not equal!” + num);
}
8、写出下面程序运行的结果
byte x = -32;
byte y = (byte)(x>>2);
System.out.println(y);
9、写出下面程序运行的结果
byte x = 127;
byte y = (byte)(x>>9);
System.out.println(y);
10、写出下面程序运行的结果
int num = 0;
switch(num) {
default:
System.out.println(“Default”);
case 1:
System.out.println(“1”);
case 2:
System.out.println(“2”);
case 3:
System.out.println(“3”);
}
D:编程题
1、考试成绩分等级,请根据键盘输入的成绩,输出对应的等级。
90~100 A等。
80-89 B等。
70-79 C等。
60-69 D等。
60以下 E等。
答:
/*
根据键盘输入的成绩分数,打印对应的等级
*/
//导包-键盘输入
import java.util.Scanner;
class Rank{
public static void main(String[] args) {
/*
Scanner 键盘输入数据
1、导包
2、创建Scanner的对象
3、获取用户输入数据
*/
Scanner dataRank=new Scanner(System.in);
System.out.println("请输入成绩:");
int num=dataRank.nextInt();//获得用户数据
if (num<60)
{ System.out.println(num+"分成绩为E等");
}
else if ((num>=60)&&(num<70))
{ System.out.println(num+"分成绩为D等");
}
else if ((num>=70)&&(num<80))
{ System.out.println(num+"分成绩为C等");
}
else if ((num>=80)&&(num<90))
{ System.out.println(num+"分成绩为B等");
}
else if ((num>=90)&&(num<=100))
{ System.out.println(num+"分成绩为A等");
}
}
}
2、请根据键盘输入的月份,打印出对应月份的天数。
1月: 31天
2月: 28天
3月: 31天
4月: 30天
5月: 31天
6月: 30天
7月: 31天
8月: 31天
9月: 30天
10月: 31天
11月: 30天
12月: 31天
答:
/*
根据键盘输入的月份,打印对应的天数
*/
//导包-键盘输入
import java.util.Scanner;
class YF{
public static void main(String[] args) {
/*
Scanner 键盘输入数据
1、导包
2、创建Scanner的对象
3、获取用户输入数据
*/
Scanner dataYF=new Scanner(System.in);
System.out.println("请输入月份(数字):");
int num=dataYF.nextInt();//获得月份数据
//if (num!=1|2|3|4|5|6|7|8|9|10|11|12);
//System.out.println("请输入月份(数字):");
if (num==1)
{ System.out.println(num+"月份有31天");
}
else if (num==2)
{ System.out.println(num+"月份有28天");
}
else if (num==3)
{ System.out.println(num+"月份有31天");
}
else if (num==4)
{ System.out.println(num+"月份有30天");
}
else if (num==5)
{ System.out.println(num+"月份有31天");
}
else if (num==6)
{ System.out.println(num+"月份有30天");
}
else if (num==7)
{ System.out.println(num+"月份有31天");
}
else if (num==8)
{ System.out.println(num+"月份有31天");
}
else if (num==9)
{ System.out.println(num+"月份有30天");
}
else if (num==10)
{ System.out.println(num+"月份有31天");
}
else if (num==11)
{ System.out.println(num+"月份有30天");
}
else if(num==12)
{ System.out.println(num+"月份有31天");
}
}
}
3、 对两个整数变量的值进行互换。
提示:
第一种:使用第三方变量
第二种:不需要第三方变量,思考下异或运算符的特点.
答:
/*
对两个整数变量的值进行互换
*/
class Change{
public static void main(String[] args)
{
int a = 1;
int b = 2;
int t;
t=a;
a=b;
b=t;
System.out.println(a);
System.out.println(b);
}
}
4、使用三元运算符完成如下练习(数据来自于键盘录入)
比较两个数是否相等
获取两个数中最大值
获取三个数中最大值
/*
三元运算符判断两个键盘录入数据的大小
*/
//导包
import java.util.Scanner;
class Panduan{
public static void main(String[] args) {
/*
1、导包,找到这个类
2、创建对象
*/
Scanner datapan=new Scanner(System.in);
System.out.println("请输入第一个数:");
int num1=datapan.nextInt();
System.out.println("请输入第二个数:");
int num2=datapan.nextInt();
if(num1==num2)
{ System.out.println(num1+"与"+num2+"相等");
}
else
{System.out.println(num1+"与"+num2+"不相等");
}
}
}

浙公网安备 33010602011771号