实战案例-- 用Java编写基础小程序

如果是刚接触或者刚学习Java,练习一些基础的算法还是必须的,可以提升思维和语法的使用。

1、输出两个int数中的最大值

import java.util.Scanner; 

public class demo { 

 public static void main(String[] args) { 

 Scanner scanner = new Scanner(System.in); 

 System.out.println("请依次输入两个整数:a,b(以空格隔开)"); 

 /*比较两个数的大小*/ 

 int a = scanner.nextInt(); 

 int b = scanner.nextInt(); 

 int max; 

 if(a >= b){ 

 max = a; 

 }else { 

 max = b; 

 } 

 System.out.println("最大值为"+max); 

 } 

 } 

} 

2、输出三个int数中的最大值

package demo; 

import java.util.Scanner; 

public class demo { 

 public static void main(String[] args) { 

 Scanner scanner = new Scanner(System.in); 

 System.out.println("请依次输入两个整数:a,b(以空格隔开)"); 

 int a = scanner.nextInt(); 

 int b = scanner.nextInt(); 

 int c = scanner.nextInt(); 

 scanner.close(); 

 /*方法一*/ 

 int d=(a>b)?a:b; 

 int e=(d>c)?d:c; 

 System.out.println("最大值为"+e); 

 /*方法二*/ 

 if(a>b && a>c){ 

 System.out.println("最大值为"+a); 

 }else if(b>c && b>a){ 

 System.out.println("最大值为"+b); 

 }else if(c>b && c>a){ 

 System.out.println("最大值为"+c); 

 }else{ 

 System.out.println("出现异常"); 

 } 

 } 

} 

3、编写程序判断某一个年份是否是闰年

package demo; 

import java.util.Scanner; 

/*判断闰年 

 由用户输入任意一个年份,能被4整除但不能被100整除,或者能被400整除,是闰年。 

 要求判断一个年份是否为闰年。 

 要求输出:此年份是否是闰年 

 */ 

public class demo { 

 public static void main(String[] args) { 

 Scanner scanner = new Scanner(System.in); 

 System.out.println("请输入年份:"); 

 int year = scanner.nextInt(); 

 /*方法一*/ 

 if((year % 4 ==0 && year % 100 !=0) || year%400 ==0){ 

 System.out.println("这个年份是闰年"); 

 }else{ 

 System.out.println("这个年份不是闰年"); 

 } 

 /*方法二*/ 

 boolean isLeapYear = (year % 4 ==0 && year % 100 !=0) || year%400 ==0; 

 String string = isLeapYear?year+"是闰年":year+"不是闰年"; 

 System.out.println(string); 

 } 

} 

**4、完成成绩等级输出程序 **如果用户输入的分数正确(0-100),则根据表-1中的规则计算该分数所对应的的级别,并计算结果。

package demo; 

import java.util.Scanner; 

/* 

 * 成绩等级划分表 

 * >= 90 A 

 * >=80 B 

 * >=60 C 

 * <60 D 

 * 

 * 分数范围:0-100 

 * 

 * 需要有2个判断*/ 

public class demo { 

 public static void main(String[] args) { 

 Scanner scanner = new Scanner(System.in); 

 System.out.println("请输入分数:"); 

 double score = scanner.nextDouble(); 

 scanner.close(); 

 if(score < 0 || score >100){ 

 System.out.println("输入的分数不在0-100之间,不符合要求"); 

 }else if(score >= 90){ 

 System.out.println("A"); 

 }else if(score >= 80){ 

 System.out.println("B"); 

 }else if(score >= 60){ 

 System.out.println("C"); 

 }else{ 

 System.out.println("D"); 

 } 

 } 

} 

5、完成命令解析程序 问题:有一个命令解析程序,该程序提供三个功能选型供用户选择,用户选择某功能后,程序在界面上输出用户所选择的的功能名称。程序的交互如图:

package demo; 

import java.util.Scanner; 

/* 

 * 有一个命令解析程序,该程序提供三个功能选型供用户选择, 

 * 用户选择某功能后,程序在界面上输出用户所选择的的功能名称。 

 * 

 * */ 

public class demo { 

 public static void main(String[] args) { 

 Scanner scanner = new Scanner(System.in); 

 System.out.println("请选择功能:1.显示全部记录 2.查询登录记录 0.退出"); 

 int command = scanner.nextInt(); 

 scanner.close(); 

 switch (command) { 

 case 0: 

 System.out.println("欢迎使用"); 

 break; 

 case 1: 

 System.out.println("显示全部记录……"); 

 break; 

 case 2: 

 System.out.println("查询登录记录……"); 

 break; 

 default: 

 System.out.println("输入错误!"); 

 } 

 } 

}

6、完成收银柜台收款程序 编写一个收银柜台收款程序。根据单价、购买数量以及收款进行计算并输出应收金额和找零;当总价大于或者等于500,享受8折优惠。控制台交互如下:

package demo; 

import java.util.Scanner; 

/* 

 * 需求: 

 * 编写一个收银柜台收款程序。根据单价、购买数量以及收款进行计算并输出应收金额和找零; 

 * 当总价大于或者等于500,享受8折优惠。 

 * 

 */ 

public class demo { 

 public static void main(String[] args) { 

 Scanner scanner = new Scanner(System.in); 

 System.out.println("请输入单价(¥):"); 

 double price = scanner.nextDouble(); 

 System.out.println("请输入数量:"); 

 double amount = scanner.nextDouble(); 

 System.out.println("请输入收款金额:"); 

 double count = scanner.nextDouble(); 

 double totalMoney = price*amount; 

 if(totalMoney > 500){ 

 totalMoney = totalMoney*0.8; 

 } 

 double change = count - totalMoney; 

 System.out.println("应收金额为:"+totalMoney + "找零为:"+change); 

 } 

} 

7、java从键盘输入三个整数,实现从小到大排序

package demo; 

import java.util.Scanner; 

/* 

 * java从键盘输入三个整数,实现从小到大排序 

 * 

 **/ 

public class demo { 

 public static void main(String[] args) { 

 Scanner scanner = new Scanner(System.in); 

 System.out.println("请输入三个整数,以空格隔开:"); 

 int a = scanner.nextInt(); 

 int b = scanner.nextInt(); 

 int c = scanner.nextInt(); 

 scanner.close(); 

 System.out.println("输入的值为:a = " + a + ", b = " + b + ", c = " + c); 

 if(a > b){ 

 if ( b > c) { 

 System.out.println("排序后的值为:" + c + "," + b + "," + a); 

 }else if( c > a){ 

 System.out.println("排序后的值为:" + b + "," + a + "," + c); 

 }else{ 

 System.out.println("排序后的值为:" + b + "," + a + "," + c); 

 } 

 }else{ 

 if(c < a){ 

 System.out.println("排序后的值为:" + c + "," + a + "," + b); 

 }else if(c > b){ 

 System.out.println("排序后的值为:" + a + "," + b + "," + c); 

 }else{ 

 System.out.println("排序后的值为:"+ a + "," + c + "," + b); 

 } 

 } 

 } 

} 

8、计算个人所得税 北京地区的个人所得税计算公式: 应纳税额 = (工资薪金所得 - 扣除数)*适用税率 - 速算扣除数 其中,扣除数为3500,适用税率以及速算扣除数如下表所示:

package demo; 

import java.util.Scanner; 

/* 

 * 北京地区的个人所得税计算公式: 

 应纳税额 = (工资薪金所得 - 扣除数)*适用税率 - 速算扣除数 

 其中,扣除数为3500 

*/ 

public class demo9 { 

 public static void main(String[] args) { 

 Scanner scanner = new Scanner(System.in); 

 System.out.println("请输入你的税前工资:"); 

 int salaryBeforeTax = scanner.nextInt(); 

 scanner.close(); 

 int taxSalary = salaryBeforeTax - 3500; 

 double tax; 

 /* 方法一*/ 

 tax = taxSalary<0?0.0: 

 taxSalary<=1500?taxSalary*0.03: 

 taxSalary<=4500?taxSalary*0.1-105: 

 taxSalary<=9000?taxSalary*0.2-555: 

 taxSalary<=35000?taxSalary*0.25-1005: 

 taxSalary<=55000?taxSalary*0.3-2755: 

 taxSalary<=80000?taxSalary*0.35-5505: 

 taxSalary*0.45-13505; 

 System.out.println("个人应缴纳税款为:"+tax); 

 /*方法二*/ 

 if( taxSalary < 0 ){ 

 tax = 0; 

 }else if( taxSalary <= 1500){ 

 tax = taxSalary*0.03; 

 }else if( taxSalary <= 4500){ 

 tax = taxSalary*0.1-105; 

 }else if( taxSalary <= 9000){ 

 tax = taxSalary*0.2-555; 

 }else if( taxSalary <= 35000){ 

 tax = taxSalary*0.25-1005; 

 }else if( taxSalary <= 55000){ 

 tax = taxSalary*0.3-2755; 

 }else if( taxSalary <= 80000){ 

 tax = taxSalary*0.35-5505; 

 }else{ 

 tax = taxSalary*0.45-13505; 

 } 

 System.out.println("个人应缴纳税款为:"+tax); 

 } 

} 

9、输入年份和月份,输出天数

package demo; 

import java.util.Scanner; 

/* 

 提示: 

 1.需要判断是否是闰年,2月份的天数跟是否是闰年有关系; 

 2.用switch-case判断每个月的天数 

 */ 

public class demo10 { 

 public static void main(String[] args) { 

 Scanner scanner = new Scanner(System.in); 

 System.out.println("请输入年份:"); 

 int year = scanner.nextInt(); 

 System.out.println("请输入月份:"); 

 int month = scanner.nextInt(); 

 int dayNum = theDayNum(month); //先根据月份得出天数,如果是闰年,对2月份的天数重新获取 

 if(isLeapYear(year)){ 

 if(month == 2){ 

 dayNum ++; //如果是闰年,2月份增加一天 

 } 

 System.out.print(year + "是闰年,"); 

 }else{ 

 System.out.print(year + "不是闰年,"); 

 } 

 System.out.println(year + "年" + month + "月份共有" + dayNum + "天"); 

 } 

 /*判断是否是闰年 

 * 能被4整除但不能被100整除,或者能被400整除,是闰年 

 */ 

 public static boolean isLeapYear(int year) { 

 if((year % 4 ==0 && year % 100 !=0) || year%400 ==0){ 

 return true; 

 }else{ 

 return false; 

 } 

 } 

 /*判断天数*/ 

 public static int theDayNum(int month) { 

 switch (month) { 

 case 1: 

 return 31; 

 case 2: 

 return 28; 

 case 3: 

 return 31; 

 case 4: 

 return 30; 

 case 5: 

 return 31; 

 case 6: 

 return 30; 

 case 7: 

 return 31; 

 case 8: 

 return 31; 

 case 9: 

 return 30; 

 case 10: 

 return 31; 

 case 11: 

 return 30; 

 case 12: 

 return 31; 

 default: 

 System.out.println("对不起,您输入的月份有误!"); 

 return 0; 

 } 

 } 

} 

作者:Wendy-lxq
原文地址:http://www.wxapp-union.com/portal.php?mod=view&aid=2893

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容