1.给数组做反序

public class Ak01 {
public static void main(String[] args) {
int[] a = new int[]{22,48,41,2,7,9};
int start=0;
int end=a.length-1;
int size = a.length;
for(int i = 0;i<size/2;i++) {
int temp;
temp = a[start];
a[start]=a[end];
a[end]=temp;
start++;
end--;
}
for(int i=0;i<size;i++) {
System.out.print(a[i]+"\t");
}
}
}

打印结果:

9    7    2    41    48    22    

2,3 :判断一个数是不是质数,打印100内的所有质数,明显可以放在一块,同时理解这种大问题拆分成一层一层小问题的解题思路。

public class Ak02 {
public static void main(String[] args) {
          //注意拆分问题,求100内的质数,先考虑什么是质数。
for(int i=0;i<100;i++) {
if(isReal(i)) {
System.out.print(i+"\t");
}
}
}
//判断是否是质数
static boolean isReal(int i){
          //小于2直接返回
if(i<2)return false;
          //等于2确定是质数直接返回结果
if(i==2) {
return true;
}
          //大于2后更有规律,程序更易编写,所以我从2开始循环。
if(i>2) {
for (int j = 2; j <= i/2; j++) {
if(i%j==0) {
return false;
}
} }
return true;
}
}

  打印结果:

2    3    5    7    11    13    17    19    23    29    31    37    41    43    47    53    59    61    67    71    73    79    83    89    97    

一点小总结:初学者练题并不是一定要写多难的题,反而是练简单的题,让自己更加能用程序表达好自己脑子里想好的步骤。就像写作文一样把脑海中的景象多用文字描述,久而久之就会写的得心应手了。

05-08 07:59