Java 学习(04)--运算符/循环常见问题

简介: Java 学习(04)--运算符/循环常见问题1:输入年份和月份,输出是平年还是闰年,输出该月份的天数import java.

Java 学习(04)--运算符/循环常见问题

1:输入年份和月份,输出是平年还是闰年,输出该月份的天数

import java.util.Scanner;
 public class runnian{
	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		System.out.println("请输入年份");
		int year = s.nextInt();
		System.out.println("请输入月份");
		int month = s.nextInt();
		// flag:0 --平年  flag:1--闰年
        int flag = 0 ;
		if((year%4==0 && year%100!=0) || year%400==0){
		//闰年条件:1.能整除4且不能整除100 2.能整除400
		    flag = 1;
			System.out.println("该年是闰年");
		}else{
			System.out.println("该年是平年");
		}  
		switch(month){
			case 1:
			case 3:
			case 5:
			case 7:
			case 8:
			case 10:
			case 12:
				System.out.println("31天");
				break;
			case 4:
			case 6:
			case 9:
			case 11:
				System.out.println("30天");
				break;
			case 2:
				if (flag == 0){
					System.out.println("28天");
				}else{
					System.out.println("29天");
				}
				break;
			default:
				System.out.println("您输入月份有误");
	}
}
}

运行结果:

 

 

2:键盘录入一个数字(1-7),输出对应的星期几。

import java.util.Scanner;
 public class task2{
	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		System.out.println("请输入数字");
		int num = s.nextInt();
		switch(num){
			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("您输入月份有误");
	}
}
}

运行:

 

3:输入性别、身高、体重,判断身材(规则自己定义)

import java.util.Scanner;
	public class task3 {
		public static void main(String[] args) {
			Scanner s = new Scanner(System.in);
			System.out.print("请输性别:(女--0 男--1)");
			int sex = s.nextInt();
			System.out.print("请输身高(厘米):");
			int height = s.nextInt();
			System.out.print("请输体重(千克):");
			int weight = s.nextInt();
   
			int sta = height - 110;
			int dis = weight - sta;
         if (sex == 0){
			if (dis > 5) {
			System.out.println("老姐:你有点胖,管住嘴啊");
			} else if (dis < -5) {
			System.out.println("美女:你有点瘦,多吃点啊");
			} else {
			System.out.println("小姐姐:你的身材太棒啦,美美哒");
			}
	     } else if (sex == 1){
             if (dis > 5) {
			System.out.println("大哥:你有点胖,管住嘴啊");
			} else if (dis < -5) {
			System.out.println("兄弟:你有点瘦,多吃点啊");
			} else {
			System.out.println("小哥哥:你的身材太棒啦,帅帅哒");
			}
         } else{
    	   System.out.println("你是外星人哈~~~性别选错啦");
         }
		}	
}

运行:

4:输入一个整数,如果此数为0,则输出”石头”,如果此数为1,则输出”剪刀”,如果此数为2,则输出”布”,如果为其它,则输出”错误”

import java.util.Scanner;
 public class task4{
	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		System.out.println("请输入数字");
		int num = s.nextInt();
		switch(num){
			case 0:
				System.out.println("石头");
				break;
			case 1:
				System.out.println("剪刀");
				break;
			case 2:
				System.out.println("布");
				break;
			default:
				System.out.println("错误");
	}
}
}

运行:

5:输入一个int型的数据,判断这个数是否能被2整除,如果能被2整除,那么输出“这个数是偶数”

import java.util.Scanner;
 public class task5{
	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		System.out.println("请输入数字");
		int num = s.nextInt();
		if (num%2 == 0){
			System.out.println("这个数是偶数");
		
		}else{
			System.out.println("这个数是奇数");
		}		
	}
}

运行:

6:输入三个int型的数据,放入到a,b,c三个变量中去,使用条件结构与交换逻辑将这三个变量中的值从小到大排列。

import java.util.Scanner;
 public class task6 {
 static int a,b,c,max,middle,min;
	public static void main(String[] args) {
		System.out.println("输入三个整数:");
		Scanner s = new Scanner(System.in);
		a = s.nextInt();
		b = s.nextInt();
		c = s.nextInt();
		max = a;
			if(b>a&&b>c){
			max = b;
		}
			if(c>a&&c>b){
			max = c;
		}
		min = a;
			if(b<a&&b<c){
			min = b;
		}
			if(c<a&&c<b){
			min = c;
		}
			middle = (a+b+c)-(max+min);
			System.out.println(min+","+middle+","+max);
}
}

运行:

7: 输入一个三位整数,判其是不是降序数如:531是降序数 百位>十位>个位

import java.util.Scanner;
	public class task7 {
	static int number;
		public static void main(String[] args) {
			int bai,shi,ge;
			System.out.println("输入一个三位数:");
			Scanner s = new Scanner(System.in);
			number = s.nextInt();
			bai = number/100;
			shi = (number%100)/10;
			ge = (number%100)%10;
            //得到百、十、个位
				if(bai>shi&&shi>ge){
					System.out.println(number+"是降序数");
				}else{
					System.out.println(number+"不是降序数");
				}
		}
}

运行:

8.求1-100之间偶数和

import java.util.Scanner;  
public class task4{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入开始的数字");
		int start = sc.nextInt();
		System.out.println("请输入结束的数字");
		int end = sc.nextInt();
		int sum = 0;
		//判断开始是否为偶数
		for(; start%2 == 1; ){
			start += 1;
		}
		
		for(int i = start;i <= end;i+=2){
			sum += i;
		}
		System.out.println("偶数和是"+ sum);
	}
}

运行:


9.求1000以内水仙花数   (153=1*1*1 + 5*5*5 + 3*3*3

public class task5{
	public static void main(String[] args){
		
		
		for(int i = 100;i < 1000;i++){
			int bai = i / 100;
			int shi = (i %100)/10;
			int ge = i % 10;
			
			if((bai*bai*bai + shi*shi*shi +ge*ge*ge == i )){
				System.out.println("水仙花数为:"+ i);
			}
		}
	}
}

运行:

10.输出图形

*

**

***

****

*****

import java.util.Scanner;
public class task6{
	public static void main(String[] args){
	Scanner sc = new Scanner(System.in);
		while(true){
		System.out.println("请输入行数");
		int row = sc.nextInt();	
		if(row == -1){
			break;
		}
		for(int i = 0;i < row;i++){
			//控制行数
			for(int j = 0;j <= i;j++){
				System.out.print("*");
			}
			System.out.println();
		}
	  }		
	}
}

当 row = -1 时,跳出循环

运行:

10.打印九九乘法表

运行:

11.

public class test{
	public static void main(String[] args){ 
	// 图形	
        for (int i = 1; i <= 5; i++) {
            // 先输出空格
            for (int j = 1; j <= 5 - i; j++) {
                System.out.print(" ");
            }
            // 打印 *
            for (int j = 1; j <= 2 * i - 1; j++) {
                System.out.print("*");
            }
            System.out.println();
		}
	}
}
        

运行:

12.小芳的妈妈每天给她2.5元钱,她都会存起来,但是,每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,请问,经过多少天,小芳才可以存到100元钱。

public class xiaofang{
	public static void main(String[] args){
		float count = 2.5f;
		for(int i=1;i<100;i++){  
            //小芳每天存2.5块  
            count=count+2.5f;  
            //每到第5天或者5 的倍数的天数就用掉6块钱  
            if(i%5==0){  
                count=count-6;  
            }  
            //直到存到100块钱,输出这一天  
            if(count==100){  
                System.out.println(i);  
                return ;//结束for循环  
            }  
        }
	}
}	

运行:

方法二:

方法三

目录
相关文章
|
4天前
|
存储 Java
java中的常见运算符的计算方式
本文介绍了计算机中二进制数的原码、反码和补码的概念及其转换方式。原码是符号位加真值的绝对值;反码中正数不变,负数其余位取反;补码在反码基础上加1。文章还详细解释了Java中的常见运算符(如按位与、或、异或、移位等)如何基于二进制进行计算,并探讨了使用补码的原因,包括统一符号位处理和扩展表示范围。通过具体代码示例帮助理解这些概念。
java中的常见运算符的计算方式
|
2月前
|
Java 程序员 API
Java循环操作哪个快?
本文探讨了Java中stream API与传统for循环在性能上的对比,通过多个示例分析了不同场景下两者的优劣。作者指出,尽管stream API使代码更简洁,但不当使用会降低可读性和性能,特别是在处理大数据量时。实验结果显示,在多数情况下,普通for循环的性能优于stream API,尤其是在单次操作耗时较短但需多次执行的场景中。文章建议开发者在设计初期就考虑全局流程,避免重复使用stream流,以提升代码质量和性能。
Java循环操作哪个快?
|
2月前
|
Java 程序员 API
Java循环操作哪个快?
本文探讨了Java中Stream API与传统for循环的性能对比及适用场景。作者通过实际案例分析,指出在某些情况下,过度使用Stream API会导致代码可读性和维护性下降。测试结果显示,在数据量较小的情况下,普通for循环的性能优于Stream API,尤其是在涉及多次类似操作时。因此,建议在开发中根据具体需求选择合适的遍历方式,以提高代码的可读性和性能。
Java循环操作哪个快?
|
2月前
|
安全 Java 开发者
Java多线程编程中的常见问题与解决方案
本文深入探讨了Java多线程编程中常见的问题,包括线程安全问题、死锁、竞态条件等,并提供了相应的解决策略。文章首先介绍了多线程的基础知识,随后详细分析了每个问题的产生原因和典型场景,最后提出了实用的解决方案,旨在帮助开发者提高多线程程序的稳定性和性能。
|
2月前
|
Java 大数据 API
14天Java基础学习——第1天:Java入门和环境搭建
本文介绍了Java的基础知识,包括Java的简介、历史和应用领域。详细讲解了如何安装JDK并配置环境变量,以及如何使用IntelliJ IDEA创建和运行Java项目。通过示例代码“HelloWorld.java”,展示了从编写到运行的全过程。适合初学者快速入门Java编程。
|
3月前
|
算法 Java 测试技术
🧑‍💻Java零基础:Java 的循环退出语句 break
【10月更文挑战第16天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
74 6
|
3月前
|
算法 Java 测试技术
🌟Java 零基础 | 详解 单目运算符
【10月更文挑战第14天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
65 7
|
2月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
8月前
|
存储 安全 Java
24、使用 Java 官方教程学习:① 类变量和类方法详解;② 深入介绍 main() 方法
24、使用 Java 官方教程学习:① 类变量和类方法详解;② 深入介绍 main() 方法
107 1
|
8月前
|
存储 Java
【JAVA学习之路 | 进阶篇】Map接口及其实现类及常用方法
【JAVA学习之路 | 进阶篇】Map接口及其实现类及常用方法