1.计算天数
/*给定一个年月日,计算是一年的第几天 (如输入:2 15 结果:第46天) */ public class Demo1 { public static void main(String[] args){ int year = 2012; int month = 12; int day = 31; int total = 0; //累计天数 /* switch(month - 1) {//0 - 11 case 0: total = day;break; case 1: total = 31 + day;break; case 2: total = 31 + 28 + day;break; case 3: total = 31 + 28 + 31 + day;break; } switch(month - 1) {//0 - 11 case 11: total += 30; case 10: total += 31; case 9: total += 30; case 8: total += 31; case 7: total += 31; case 6: total += 30; case 5: total += 31; case 4: total += 30; case 3: total += 31; case 2: total += 28; case 1: total += 31; case 0: total += day; } */ //数组 int[] a = {0,31,28,31,30,31,30,31,31,30,31,30,31}; for(int i = 0; i < month; i++ ){ total += a[i]; } total += day; //判断闰年 if(year % 400 == 0 || year % 4 == 0 && year % 100 != 0){ if(month > 2) total++; } System.out.println("total = " + total); } }
2.猴子吃桃
/* 猴子吃桃问题。猴子第一天摘下若干个桃子, 当即吃了一半,还不过瘾,又多吃了一个。 第二天早上又将剩下的桃子吃掉了一半,又多吃了一个。 以后每天早上都吃了前一天剩下的一半零一个。 到第10天早上想再吃时,就只剩一个桃子了。 求第一天共摘多少桃子 长度为10的int数组,放入10个随机数,输出最大、最小数 */ public class Demo2 { public static void main(String[] args){ /* int total = 1; // 10 - 2 10 - 1 for(int i = 10 ; i > 1; i-- ) { total = (total + 1) * 2;//前一天的桃子数 } System.out.println("total = " + total); */ int[] a = {5,2,4,6,9,0,3,11,7,8}; int max, min; max = a[0]; min = a[0]; for(int i = 1; i < a.length; i++) { if(max < a[i]) { max = a[i]; System.out.println("max ===> " + max); } if(min > a[i]){ min = a[i]; } } System.out.println("max = " + max); System.out.println("min = " + min); } }
3.打印
/* 6 1 2 3 4 5 5 6 1 2 3 4 4 5 6 1 2 3 3 4 5 6 1 2 2 3 4 5 6 1 1 2 3 4 5 6 */ public class Demo3 { public static void main(String[] args){ int[] a = {1,2,3,4,5,6}; int k = 5; for(int i = 0; i < a.length; i++) { for(int j = 0; j < a.length; j++) { System.out.print(a[k] + " "); k++; if( k == 6) { k = 0; } } System.out.println(); k--;//a数组的索引退一个位置 } } }
时间: 2024-10-09 21:35:46