写在前面:这些解释和部分答案是我自己填写的,有可能有不对的地方,但是基本思路还是没问题的,如果大家有不懂得,或者在自学这部分知识的同学可以参考一下。这部分的习题是在视频中没有给出的。希望同学们能够好好学习。
class Test1
{
public static void main(String[] args)
{
/*
//第一题
{
int x=0,y=1;
if(++x==y--&x++==1||--y==0)//a=++x:a=1,x=1 b=y--:b=1,y=0 c=x++:c=1,x=2 ||前面的运算是正确的,所以不用运行--y=0;
System.out.println("x="+x+",y="+y);//x=2,y=0
else
System.out.println("y="+y+",x="+x);
}
}
//第二题
public static void main(String[] args)
{
show(0);//15
show(1);//14
}
public static void show(int i)
{
switch(i)
{
default: //我们就show(0)举例,第一遍:先case 1;case 4;case 2都没有合适的,然后开始执行default,输出2;
i+=2;
case 1: //第二遍,输出3=2+1
i+=1;
case 4: //第二遍,输出11=3+8
i+=8;
case 2: //第三遍,输出15=11+4
i+=4;
}
System.out.println("i="+i);
}
*/
//第三题
/*用程序的方式显示出下列结果。
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
*/
for (int x=1;x<=5 ;x++ )
{
for (int y=1;y<=x ;y++ )
{
System.out.print(y+"*"+x+"="+y*x+"\t");
}
System.out.println();
}
/*第四题
求出1~100之间,即使3又是7的倍数出现的次数?
*/
int count=0;
for (int x=1;x<=100 ;x++ )
{
if (x%3==0 & x%7==0)
{
count++;
}
}
System.out.print("count="+count);
/*第五题
已知学生成绩以100分为满分,共分5个等级:A,B,C,D,E。
90~100为等级A,80~89为等级B,70~79为等级C,
60~69为等级D,0~59为等级E。
要求定义一个成绩变量,当成绩变化时,可直接知道该成绩对应的等级。
例如:当成绩为100时,该学生的等级时A。
*/
//定义一功能,通过给定分数,获取该分数对应的等级。
/*
1,明确该功能的结果:等级 char
2,有没有未知内容。分数。int
*/
public static String getLevel(int num)
{
char level; //返回的是一个字符char,所需要定义一个代表值level
if(num>=90 && num<=100)
level = 'A';
else if(num>=80 && num<=89)
level = 'B';
else if(num>=70 && num<=79)
level = 'C';
else if(num>=60 && num<=69)
level = 'D';
else
level = 'E';
return level;
}
public static void main(String[] args)
{
char ch = getLevel(35); //也因为是字符char,所以需要定义一个 代表值ch。
System.out.println("level="+ch);
}
//第六题写出程序结果。
public static void main(String[] args)
{
int x = 1;
for(show('a'); show('b') && x<3; show('c'))
{
show('d');
x++;
}
}
public static boolean show(char ch)//定义了两个功能,1,打印字符。 2,输出true
{
System.out.println(ch);
return true;
}
//a b d c b d c b
}
}
|
|