Java条件、循环练习

  • Post author:
  • Post category:java


第一题:分析以下需求,并用代码实现:

1.功能描述:模拟计算器功能,对键盘录入的两个int类型的数据进行加、减、乘、除的运算,并打印运算结果

2.要求:

(1)键盘录入三个整数,其中前两个整数代表参加运算的数据,

第三个整数为要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算)

(2)使用今天所学知识完成功能

(3)演示格式如下:

请输入第一个整数:30

请输入第二个整数:40

请输入您要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算):0

控制台输出:30+40=70

package com.itheima;

import java.util.Scanner;
/*
 * 分析以下需求,并用代码实现:
	1.功能描述:模拟计算器功能,对键盘录入的两个int类型的数据进行加、减、乘、除的运算,并打印运算结果
	2.要求:
		(1)键盘录入三个整数,其中前两个整数代表参加运算的数据,
			第三个整数为要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算)
		(2)使用今天所学知识完成功能
		(3)演示格式如下:
			请输入第一个整数:30
			请输入第二个整数:40
			请输入您要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算):0
			控制台输出:30+40=70
 */
public class SwitchTest2 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		System.out.println("请输入第一个整数:");
		int a = sc.nextInt();
		System.out.println("请输入第二个整数:");
		int b = sc.nextInt();
		System.out.println("请输入要进行的运算(0:表示加法运算,1:表示减法运算,2:表示乘法运算,3:表示除法运算)");
		int temp = sc.nextInt();
		switch(temp) {
		case 0:
			int sum = a + b;
			System.out.println("a+b="+sum);
			break;
		case 1:
			int sub = a - b;
			System.out.println("a-b="+sub);
			break;
		case 2:
			int mul = a * b;
			System.out.println("a*b="+mul);
			break;
		case 3:
			float div =(float)a/b;
			System.out.println("a/b="+div);
			break;
		default:
			System.out.println("无效数据");
			break;
		}
	}
}

第二题:分析以下需求,并用代码实现:

1.功能描述:键盘录入月份,输出对应的季节

2.要求:

(1)键盘录入一个整数(代表月份,范围1-12)

(2)输出该月份对应的季节

3,4,5春季

6,7,8夏季

9,10,11秋季

12,1,2冬季

(3)演示格式如下:

请输入一个月份:3

控制台输出:3月份是春季

package com.itheima;

import java.util.Scanner;
/*
 * 分析以下需求,并用代码实现:			
	1.功能描述:键盘录入月份,输出对应的季节
	2.要求:
		(1)键盘录入一个整数(代表月份,范围1-12)
		(2)输出该月份对应的季节
			3,4,5春季
			6,7,8夏季
			9,10,11秋季
			12,1,2冬季
		(3)演示格式如下:
			请输入一个月份:3
			控制台输出:3月份是春季
 */
package com.itheima;

import java.util.Scanner;
/*
 * 分析以下需求,并用代码实现:			
	1.功能描述:键盘录入月份,输出对应的季节
	2.要求:
		(1)键盘录入一个整数(代表月份,范围1-12)
		(2)输出该月份对应的季节
			3,4,5春季
			6,7,8夏季
			9,10,11秋季
			12,1,2冬季
		(3)演示格式如下:
			请输入一个月份:3
			控制台输出:3月份是春季
 */
public class SwitchTest3 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		System.out.println("请输出月份1-12");
		int month = sc.nextInt();
		//用switch实现
/*		switch(month) {
		case 3:
			System.out.println(month+"月份是春季");
			break;
		case 4:
			System.out.println(month+"月份是春季");
			break;
		case 5:
			System.out.println(month+"月份是春季");
			break;
		case 6:
			System.out.println(month+"月份是夏季");
			break;
		case 7:
			System.out.println(month+"月份是夏季");
			break;
		case 8:
			System.out.println(month+"月份是夏季");
			break;
		case 9:
			System.out.println(month+"月份是秋季");
			break;
		case 10:
			System.out.println(month+"月份是秋季");
			break;
		case 11:
			System.out.println(month+"月份是秋季");
			break;
		case 12:
			System.out.println(month+"月份是冬季");
			break;
		case 1:
			System.out.println(month+"月份是冬季");
			break;
		case 2:
			System.out.println(month+"月份是冬季");
			break;
		default:
			System.out.println("数据有误");
		}*/
		
		//用if实现
		/*if(month==3||month==4||month==5) {
			System.out.println(month+"月份是春季");
		}else if(month==6||month==7||month==8) {
			System.out.println(month+"月份是夏季");
		}else if(month==9||month==10||month==11) {
			System.out.println(month+"月份是秋季");
		}else if(month==12||month==1||month==2) {
			System.out.println(month+"月份是冬季");
		}else {
			System.out.println("数据有误");
		}*/
		//switch优化 利用case穿透
		switch(month) {
		case 3:
		case 4:
		case 5:
			System.out.println(month+"月份是春季");
			break;
		case 6:
		case 7:
		case 8:
			System.out.println(month+"月份是夏季");
			break;
		case 9:
		case 10:
		case 11:
			System.out.println(month+"月份是秋季");
			break;
		case 12:
		case 1:
		case 2:
			System.out.println(month+"月份是冬季");
			break;
		default:
			System.out.println("数据有误");
		}
	}
}

第三题:分析以下需求,并用代码实现:

1.打印1到100之内的整数,但数字中包含9的要跳过

2.每行输出5个满足条件的数,之间用空格分隔

3.如:1 2 3 4 5

package com.itheima;
/*
 * 分析以下需求,并用代码实现:
	1.打印1到100之内的整数,但数字中包含9的要跳过
	2.每行输出5个满足条件的数,之间用空格分隔
	3.如:1 2 3 4 5 
 */

public class FIowControlTest {
	public static void main(String[] args) {
		int count = 0;
		
		for(int i=1;i<=100;i++) {
			int ge = i%10;
			int shi = i/10%10;
			
			if(ge!=9 && shi!=9) {
				System.out.print(i+" ");
				count++;
			while(count%5==0) {
				System.out.println();
				break;
			}
			}
		}
	}
}

第四题。

1.打印出1-100之间能被3整出并且能被5整除的数字。

2.打印出1-100之间个位或者十位包含5并且能被3整出的数字。

3.打印出1-100之间尾数为0的数字的个数。

4.打印出1-100之间所有的奇数之和。

package com.itheima;
/*
 * 1.打印出1-100之间能被3整出并且能被5整除的数字。
	2.打印出1-100之间个位或者十位包含5并且能被3整出的数字。
	3.打印出1-100之间尾数为0的数字的个数。
	4.打印出1-100之间所有的奇数之和。
 */
public class FlowControlTest2 {
	public static void main(String[] args) {
		System.out.println("既能被3整除也能被5整除");
		for(int i = 1;i <= 100;i++) {
			if(i/3==0 && i/5==0) {
				System.out.print(i+" ");
			}
		}
		System.out.println();
		System.out.println("个位或者十位包含5并且能被3整出的数字");
		for(int i = 1;i <= 100;i++) {
			int ge = i%10;
			int shi = i/10%10;
			if(ge==5 || shi==5 && i/3==0) {
				System.out.print(i+" ");
			}
		}
		System.out.println();
		System.out.println("尾数为0的数字的个数");
		for(int i = 1;i <= 100;i++) {
			if(i%10==0) {
				System.out.print(i+" ");
			}
		}
		System.out.println();
		System.out.println("所有的奇数之和");
		for(int i = 1;i <= 100;i++) {
			if(i%2!=0) {
				System.out.print(i+" ");
			}
		}
	}
}



版权声明:本文为qq_45886544原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。