1,经典兔子问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少
package java4;
public class practise {
public static void main(String[] args) {
int f1=1,f2=1,f;
int m=30;
for (int i = 3; i < m; i++) {
f=f2;
f2=f1+f2;
f1=f;
System.out.println("第" +i+ "个月有" +f2+ "只兔子");
}
}
}
2,输入一串字符,计算出英文字母、空格、数字和其它字符的个数
package java4;
import java.util.Scanner;
public class practise {
public static void main(String[] args) {
int zimu=0;
int kongge=0;
int shuzi=0;
int qita=0;
Scanner input=new Scanner(System.in);
String toString=input.nextLine();
char [] ch=toString.toCharArray();
for(int i=0;i<ch.length;i++){
if(Character.isLetter(ch[i])) {
zimu++;
}else if(Character.isDigit(ch[i])) {
shuzi++;
}else if(Character.isSpaceChar(ch[i])){
kongge++;
}else {
qita++;
}
}
System.out.println("zimu:"+zimu);
System.out.println("shuzi:"+shuzi);
System.out.println("kongge:"+kongge);
System.out.println("qita:"+qita);
}
}
3,求s=a+aa+aaa+aaaa+aa...a的值。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制
package java4;
import java.util.Scanner;
public class practise {
public static void main(String[] args) {
System.out.println("请输入要相加的数字");
int a=new Scanner(System.in).nextInt();
System.out.println("请输入相加数字的数量");
int n=new Scanner(System.in).nextInt();
int sum=0,sum1=0;
for (int i = 1; i <= n; i++) {
sum1=sum1+a;
sum=sum+sum1;
a=a*10;
}
System.out.println("结果为:"+sum);
}
}
4,一球从n(从键盘输入)米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高?
package java4;
import java.util.Scanner;
public class practise {
public static void main(String[] args) {
System.out.println("请输入球落下的高度");
double height=new Scanner(System.in).nextDouble();
double s=height;
for(int i=1;i<=10;i++){
height=height/2;
s=s+2*height;
}
System.out.println("第十次落地的路程为"+s+"米");
System.out.println("第十次落地的反弹高度为"+height+"米");
}
}
5,输入某年某月某日,判断这一天是这一年的第几天?
package java4;
import java.util.Scanner;
public class practise {
public static void main(String[] args) {
int e=0,sumday=0;
System.out.println("请输入年份;");
int year=new Scanner(System.in).nextInt();
System.out.println("请输入月份:");
int month=new Scanner(System.in).nextInt();
System.out.println("请输入天");
int day=new Scanner(System.in).nextInt();
if(year<0||month<0||day<0||month>12||day>31){
System.out.println("输入的年月日有问题,请重新运行程序");
}
for (int i = 1; i <month ; i++) {
switch (i){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
sumday = 31;
break;
case 4:
case 6:
case 9:
case 11:
sumday = 30;
break;
case 2:
if ((year % 400 == 0) || (year % 4 == 0&& year % 100 != 0)) {
sumday = 29;
} else {
sumday = 28;
}
break;
}
day=day+sumday;
}
System.out.println(year+"-"+month+"-"+day+"是今年的第"+day+"天");
}
}