4.3作业

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);
 }
}



猜你喜欢

转载自blog.csdn.net/fnwibwj/article/details/79822287
4.3