打印99乘法表
因为有9行9列,所有要用两个for循环
int m; for (int i = 1; i < 10; i++) { for (int j = 1; j <= i; j++) { System.out.print(i+"*"+j+"="+i*j+" "); } System.out.println(); }
水仙花数
三位数中每位数字的立方 和等于该数字
要取出每位数字,算出3个数字的立方和,然后判断是否相等
for (int i = 100; i < 1000; i++) { int n=i%10; int m=i/10%10; int k=i/100; if (m*m*m+n*n*n+k*k*k==i) { System.out.println(i); } }
输入一个数字 判断该数字是不是回文数(利用数组完成)
首先确定输入数字是几位数 将每位数字取出输入数组
利用 判断首尾一次是否相等 来确定该数字是否是回文数
int m=scanner.nextInt(); int n=m; int count=0; while (n>0) { n/=10; count++; } System.out.println(count); int [] arr = new int[count]; for (int i = 0; i < count; i++) { int p=m%10; m=m/10; System.out.print(p); arr[i]=p; } for (int i = 0,j=arr.length-1; i < j; i++,j--) { if(arr[i]!=arr[j]){ System.out.println("不是回文数"); return; } } System.out.println("是回文数");
输入一个数字,在已知数组内查找是否有该数字;如果存在,则输出数字下标;如果不存在,则输出-1.(利用二分法查找
int[] arr = {0,1,2,3,4,5,6,7,8,9}; Scanner in = new Scanner(System.in); System.out.print("请输入一个数字:"); int num = in.nextInt(); int start = 0; // 默认起始坐标 int end = arr.length-1; // 默认结尾坐标 int index = -1; // 找不到默认index为-1 while(start<=end){ int middle = (start+end)/2; // 计算中间下标 if(num == arr[middle]){ index = middle; break; } if(num > arr[middle]){ start = middle + 1; } if(num < arr[middle]){ end = middle - 1; } } System.out.println(index);
)