1:switch语句的格式?针对格式的解释?以及注意事项?
1.)switch(表达式){
case 值1:
语句1;
break ;
case 值2:
语句2;
break;
case 值3:
语句3;
break;
....
default:
语句n+1;
break;
}
2).执行流程:
case语句中的值1和表达式中的值比较,如果一致,执行语句1
如果不一致,走case 值2,再进行比较,如果椅子,执行语句2
....
如果上述都不一致,执行default中的语句
3.)格式的解释:
switch:当前是一个选择结构语句,它的作用和if语句是一样
case语句:它后面的值是和表达式进行比较
break:表示结束当前switch语句
default:是和if语句中的else意识时候一样的,如果条件都不成立,执行default中的语句
4.) 关于switch语句中的注意事项:
1)case语句的后面只能跟常量(根据具体的需求),不能跟变量! javascript中的case后面是可以跟变量并且还可以表达式
2)default语句可以在switch语句中的任何位置,不影响代码执行,如果是在语句中,那么break最好带上
3)建议把break带上,否则会造成一个现象:case穿透!
2:看程序,分析下面程序的结果:
int x = 2,y=3;
switch(x)
{
default:
y++;
case 3:
y++;
break;
case 4:
y++;
}
System.out.println("y="+y);
4
3:根据输入的值,判断是星期几。(分别用if语句和switch语句实现)
package org_westos;
import java.util.Scanner;
public class Work1 {
public static void main (String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个数字");
int days=sc.nextInt();
switch(days) {
case 1:
System.out.println("今天是星期一");
break;
case 2:
System.out.println("今天是星期二");
break;
case 3:
System.out.println("今天是星期三");
break;
case 4:
System.out.println("今天是星期四");
break;
case 5:
System.out.println("今天是星期五");
break;
case 6:
System.out.println("今天是星期六");
break;
case 7:
System.out.println("今天是星期天");
break;
default :
System.out.println("错误");
break;
}
}
}
package org_westos;
import java.util.Scanner;
public class Work1 {
public static void main (String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个数字");
int days=sc.nextInt();
switch(days) {
case 1:
System.out.println("今天是星期一");
break;
case 2:
System.out.println("今天是星期二");
break;
case 3:
System.out.println("今天是星期三");
break;
case 4:
System.out.println("今天是星期四");
break;
case 5:
System.out.println("今天是星期五");
break;
case 6:
System.out.println("今天是星期六");
break;
case 7:
System.out.println("今天是星期天");
break;
default :
System.out.println("错误");
break;
}
}
}
4:for循环的格式?要能看懂执行流程。
用for循环完成如下案例
求和
求偶数和
求奇数和
打印水仙花数
统计水仙花数
九九乘法表
package org_westos;
//求和一到一百
public class Work3 {
public static void main(String[] args) {
int sum=0;
for(int i=1;i<101;i++) {
sum+=i;
}
System.out.println(sum);
}
}
package org_westos;
//求和一到一百内偶数
public class Work4 {
public static void main(String[] args) {
int sum=0;
for(int i=1;i<101;i++) {
if(i%2==0) {
sum+=i;
}
}
System.out.println(sum);
}
}
package org_westos;
//求和奇数
public class Work5 {
public static void main(String[] args) {
int sum=0;
for(int i=1;i<101;i++) {
if(i%2!=0) {
sum+=i;
}
}
System.out.println(sum);
}
}
package org_westos;
import java.util.Scanner;
//判断水仙花数
public class Work6 {
public static void main(String[]args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个三位数");
int x=sc.nextInt();
int ge=x%10;
int shi=x/10%10;
int bai=x/100;
if(ge*ge*ge+shi*shi*shi+bai*bai*bai==x)
{
System.out.println("是水仙花数");
}
else {
System.out.println("不是水仙花数");
}
}
}
package org_westos;
//统计水仙花数
public class Work7 {
public static void main(String[]args) {
int count=0;
for(int i=100;i<1000;i++) {
int ge=i%10;
int shi=i/10%10;
int bai=i/100;
if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i)
{
count++;
}
}
System.out.println(count);
}
}
package org_westos;
//九九乘法表
public class Work8 {
public static void main(String[] args) {
for(int i=1;i<=9;i++) {
for(int j=1;j<=i;j++) {
System.out.print(i+"*"+j+"="+(i*j)+"\t");
}
System.out.println();
}
}
}
5:break,continue和return分别有什么用?
break:表示中断,结束的意思,结束语句;
continue:继续的意思,跳出当前循环,直接进入一次循环
continue:单独是不能使用的,在循环语句中使用多
跳转控制语句:
retrun :方法的返回值 ,会带回一个结果
6::函数的概念?函数的格式?格式的解释说明
1.)方法:完成特定功能的代码块
2.)方法的格式: 形式参数
public static 返回值 方法名(参数类型1 变量1,参数类型2 变量名){
return ...
}
3.) 方法格式的解释:
public static:方法是静态的,并且是公共的方法 (今天写方法,public static)
返回值(数据类型): 根据具体的需求,返回什么类型,用什么样的数据类型结束
方法名:给当前代码块起名字,命名规则:单个单词:字母全小写 多个单词:第一个单词全部小写,第二个单词开始每个单词首字母大写
return: 将当前代码的计算的结果,返回给调用者
6:函数的调用
A:明确返回值类型的函数调用
B:void类型的函数调用
7:函数的练习:
A:求两个数据之和
B:判断两个数据是否相等
C:获取两个数中较大的值
D:打印m行n列的星形矩形
E:打印nn乘法表
package org_westos;
//求两个数之和
import java.util.Scanner;
public class Work9 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("青输入两个数");
int x=sc.nextInt();
int y=sc.nextInt();
int sum;
sum=sum(x,y);
System.out.println(sum);
}
public static int sum(int x,int y) {
return(x+y);
}
}
package org_westos;
import java.util.Scanner;
public class Work10 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in) ;
System.out.println("请输入两个数");
int x=sc.nextInt();
int y=sc.nextInt();
boolean flag=compare(x,y);
System.out.println(flag);
}
public static boolean compare(int x,int y) {
return (x==y)?true:false;
}
}
package org_westos;
import java.util.Scanner;
public class Work11 {
public static void main(String[]args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入两个数字");
int x=sc.nextInt();
int y=sc.nextInt();
int max=max(x,y);
System.out.println(max);
}
public static int max(int x,int y) {
int max;
max=(x>y)?x:y;
return max;
}
}
package org_westos;
//打印星号
import java.util.Scanner;
public class Work12 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入两个数字");
int m=sc.nextInt();
int n=sc.nextInt();
print(m,n);
}
public static void print(int m,int n) {
for(int i=0;i<m;i++) {
for(int j=0;j<n;j++) {
System.out.print("*");
}
System.out.println();
}
}
}
package org_westos;
import java.util.Scanner;
//打印nn乘法表
public class Work13 {
public static void main(String[]args) {
Scanner sc=new Scanner (System.in);
System.out.println("请输入一个数");
int n=sc.nextInt();
print(n);
}
public static void print(int n) {
for(int i=1;i<=n;i++) {
for(int j=1;j<=i;j++) {
System.out.print(i+"*"+j+"="+(i*j)+"\t");
}
System.out.println();
}
}
}
8:short s = 1; s = s + 1;有没有问题?如果有怎么解决?
short s = 1; s += 1;有没有问题?如果有怎么解决?
第一个有问题,应强制类型转换
9:第一题
int x = 1,y = 1;
if(x++==2 & ++y==2) {
x =7;
}
System.out.println("x="+x+",y="+y);
x:2 y:2
第二题
int x = 1,y = 1;
if(x++==2 && ++y==2)
{
x =7;
}
System.out.println("x="+x+",y="+y);
x:2 y:1
第三题
int x = 1,y = 1;
if(x++==1 | ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
x:7 y:2
第四题
int x = 1,y = 1;
if(x++==1 || ++y==1)
{
x =7;
}
System.out.println("x="+x+",y="+y);
x:7 y:1
10:编写代码实现如下内容:if语句实现
考试成绩分等级。
90~100 A等。
80-89 B等。
70-79 C等。
60-69 D等。
60以下 E等。
请根据给定成绩,输出对应的等级。
package org_westos;
import java.util.Scanner;
/*
* 考试成绩分等级。
90~100 A等。
80-89 B等。
70-79 C等。
60-69 D等。
60以下 E等
*/
public class Work14 {
public static void main(String[]args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入成绩");
int x=sc.nextInt();
if(x>=0&&x<=100) {
if(x>=90&&x<=100) {
System.out.println("A等");
}
else if(x>=80&&x<=89) {
System.out.println("B等");
}
else if(x>=70&&x<=79) {
System.out.println("C等");
}
else if(x>=60&&x<=69) {
System.out.println("D等");
}
else {
System.out.println("E等");
}
}
else {
System.out.println("非法数字");
}
}
}
11:编程题 需求:小芳的妈妈每天给她2.5元钱,她都会存起来,但是,
每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
请问,经过多少天,小芳才可以存到100元钱。
package org_westos;
/*
* 需求:小芳的妈妈每天给她2.5元钱,她都会存起来,但是,
每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
请问,经过多少天,小芳才可以存到100元钱。
*/
public class Work15 {
public static void main(String[]args) {
int days=0;
double money=0.0;
while(money<100) {
days++;
money+=2.5;
if(days%5==0) {
money=money-6;
}
}
System.out.println(days);
}
}