6月28和29日课程总结(分支结构与循环结构)

一.三目运算符:(条件运算符)
 * 格式:表达式1?表达式2:表达式3
 * 表达式1是一个boolean类型的值
 * 表达式2和表达式3的结果必须是相同的数据类型
 * 当表达式1的值为true 的时候取表达式2的值否则为表达式3的值
 * 
 * 注意:表达式2和表达式3也是一个三目运算,而且表达式2和表达式3不会同时
 * 都执行
 

这一点东西是前一天遗留的.

二.分支结构:
 
* 1.if   单一选择
 * 2.if-else  二选一
 * 3.if-else if-else  多选一
 * 4.switch-case  多选一分支结构:
 

1.if:
         * 结构if(条件判断){
         *      执行的代码块;
         * }
         * 当条件判断为true的时候才执行大括号里面的代码块
         * 重点:if结构可以不需要大括号,但是只能控制离他最近的一条语句

2.if-else
         * 格式:if(){
         * 执行的代码块;
         * }else{
         * 否则执行的代码块;
         * }
         * 当条件判断为true时,执行if大括号中的代码块,否则执行else中的代码块;
         * 注意:if和else可以不打大括号,但是只能分别控制一句话;

3.if-else if-else

        if(条件判断){
         *         执行的代码块1
         * }else if{
         *         执行的代码块2
         * }else{
         *         执行的代码块3
         * }

4.switch-case
         * 结构:
         * switch(变量){跟打10086一样
         * case 值1:
         *         执行的代码块1;
         *         break;
         * case 值2:
         *         执行的代码块2;
         *         break;//可以跳出循环结构和switch...case
         *   ...
         * default:
         *         默认执行的代码块;  
         * }

    注意:
         *   -switch-case中的每一个Case后面必须要加break,
         *   否则会一直选择下去
         *   -default语句块的位置可以不在最后面,但是一旦没有在最后面,
         *   语句块后面就需要添加break
         *重点:switch-case中允许的变量类型:
         *byte,short,int,char,jdk1.5以后支持String类型(枚举类型)  

这里阳老师说switch...case语句就跟选小姐一样,这个行就带走,不行就下一个,笑死我了,附上代码

        System.out.println("请输入一个1~3的数字:");
		int num = sc.nextInt();
		    switch(num){
		case 1:
			System.out.println("1号女技师");
			break;
		case 2:
			System.out.println("2号女技师");
			break;
		case 3:
			System.out.println("3号女技师");
			break;
		default:
			System.out.println("男技师");
		}

分支结构概念还是很简单的,但是在具体的实例中,要灵活运用也不是很简单的事情!

接下来就开始讲循环了

5.循环结构:
 *
-while
 * 结构:while(条件判断){
 *         重复执行的代码块;
 * }
 * 如果条件判断为true,则会执行大括号里面的内容
 * 如果条件一直为true,则会重复执行代码块


 * -do-while
 *
结构:do{
 * 重复执行的代码块;
 * }while(条件判断);
 * 先会执行一次代码块,再判断条件是否为true,如果为true,则继续循环

面试:while和do-while的区别?
 * -while循环是先判断条件,在决定是否执行循环
 * -do-while是先执行一次循环,再判断条件,是否继续执行循环

这一块内容概念比较简单,主要以练习题目为主,所以我多附上几个习题:

课后题1:

package NewDay2;
/**
 * 输入一批整数,输出其中的最大值和最小值,输入数字0时结束循环
 */
import java.util.Scanner;

public class homeWork1 {

	public static void main(String[] args) {
			Scanner sc = new Scanner(System.in);
			System.out.print("请输入一个整数(输入0结束):");
			int num = sc.nextInt();
			int max =num;
			int min =num;
			while(num!=0){
				if(num>max){
					max  = num;
				}else if(num<min){
					min = num;
				}
				System.out.print("请输入一个整数(输入0结束):");
				num = sc.nextInt();
			}
			System.out.print("最大值是:"+max+" ");
			System.out.println("最小值是:"+min);
		}

	}

课后题2:

package NewDay2;

import java.util.Scanner;

public class homeWork2 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int num =1;
		while(num!=0){
			System.out.print("请输入数字1~7(输入0结束):");
			num = sc.nextInt();
			switch(num){
			case 0:break;
			case 1:System.out.println("今天是MON");break;
			case 2:System.out.println("今天是TRU");break;
			case 3:System.out.println("今天是WEN");break;
			case 4:System.out.println("今天是THI");break;
			case 5:System.out.println("今天是FRI");break;
			case 6:System.out.println("今天是SAT");break;
			case 7:System.out.println("今天是SUN");break;
			default:System.out.println("请重新输入!");
			}
		}
		System.out.println("程序结束!");
	}

}

课后题3:

package NewDay2;

import java.util.Scanner;

public class homeWork3 {

	public static void main(String[] args) {
		double price = 5000.0;
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入您出行月份(1~12):");
		int mon = sc.nextInt();
		System.out.println("请问您选择头等舱还是经济舱?头等舱输入1,经济舱输入2");
		int cho = sc.nextInt();
		switch(mon){
		case 11:
		case 12:
		case 1:
		case 2:
		case 3:
			switch(cho){
			case 1:System.out.println("您的机票价格为:"+price*0.5);break;
			case 2:System.out.println("您的机票价格为:"+price*0.4);break;
			default:System.out.println("请重新输入!");
			}break;
		case 4:
		case 5:
		case 6:
		case 7:
		case 8:
		case 9:
		case 10:
			switch(cho){
			case 1:System.out.println("您的机票价格为:"+price*0.9);break;
			case 2:System.out.println("您的机票价格为:"+price*0.6);break;
			default:System.out.println("请重新输入!");
			}break;
		default:System.out.println("请重新输入!");	
		}
	}
}

哈哈哈哈,轻轻松松.

以下是6月29日的内容,就只讲了一个for循环,
 *for循环:
 *
格式:
 * for(表达式1;表达式2;表达式3){
 *         重复执行的代码块;
 * }
 * 表达式 1:用来定义变量;
 * 表达式2:用来写循环的条件
 * 表达式3:用来写表达式1定义的变量的递增或者递减
 * 
 *什么情况下使用for循环?
 *在明确知道循环次数的情况下

小知识:

\t:相当于是一个大空格键(tab)
 \n:相当于是回车键(换行)

三个在循环中常用的关键字:

break:跳出switch-case结构和当前的循环结构
continue:结束当次循环,直接进入到下一次循环
 return:结束当前的方法,回到调用该方法的地方(结束程序)

课后作业布置了四个题,但是,有参考价值的我认为只有第一题和第四题

课后题一

package NewDay3;

import java.util.Scanner;

public class homeWork1 {

	public static void main(String[] args) {
		do{
			Scanner sc = new Scanner(System.in);
			System.out.println("输入学生姓名:");
			String name = sc.next();
			int sum = 0;
			for(int i=1;i<=5;i++){
				System.out.println("请输入5门功课中第"+i+"门功课的成绩:");
				int score = sc.nextInt();
				sum +=score;
			}
			System.out.println(name+"的平均分是:"+(sum/5));
			System.out.println();
			System.out.println("继续输入吗?(y/n)");
			String change = sc.next();
			if(change.equals("y")){
				continue;
			}else{
				System.out.println("成绩录入结束");
				return;
			}
		}while(true);
	}

}


 课后题四

package NewDay3;
/**
 * 
 *打印如下图形
 * *****
 *  *****
 *   *****
 */
public class homeWork4 {

	public static void main(String[] args) {
		for(int i=1;i<=3;i++){
			for(int t=0;t<i-1;t++){
			System.out.print(" ");
			}
			for(int j=1;j<=5;j++){
				System.out.print("*");
			}
			System.out.println();
		}
		
	}

}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值