13、 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
import java.util.Scanner; public class example { public static void main(String args[]) { System.out.println("请输入字符串:"); Scanner scan=new Scanner(System.in); String str=scan.next(); String E1="[\u4e00-\u9fa5]"; Sintrting E2="[a-zA-Z]"; count H=0; int count E=0; char[] arrChar=str.toCharArray(); String[] arrStr=new String[arrChar.length]; for (int i=0;i<arrChar.length ;i++ ) { arrStr[i]=String.valueOf(arrChar[i]); } for (String i: arrStr ) { if (i.matches(E1)) { countH++; } if (i.matches(E2)) { countE++; } } System.out.println("汉字的个数"+countH); System.out.println("字母的个数"+countE); } }
程序分析:利用while语句,条件为输入的字符不为 '\n '.
14、题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它
在第10次落地时,共经过多少米?第10次反弹多高?
public class Example { public static void main(String[] args) { double s=0; double t=100; for(int i=1;i<=10;i++) { s+=t; t=t/2; } System.out.println(s); System.out.println(t); } }
15、题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
public class Wanshu { public static void main(String[] args) { int i=0; int j=0; int k=0; int t=0; for(i=1;i<=4;i++) for(j=1;j<=4;j++) for(k=1;k<=4;k++) if(i!=j && j!=k && i!=k) {t+=1; System.out.println(i*100+j*10+k); } System.out.println (t); } }
1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。
16、题目:一个整数,它加上100后是一个完全平方数,加上168又是一个完全平方数,请问该数是多少?
public class test { public static void main (String[]args) { long k=0; for(k=1;k<=100000l;k++) if(Math.floor(Math.sqrt(k+100))==Math.sqrt(k+100) && Math.floor(Math.sqrt(k+168))==Math.sqrt(k+168)) System.out.println(k); } }
程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。