1.从键盘输入任意个整数,求出输出的正数的个数和负数的个数,输入零结束。
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int z = 0;
int f = 0;
while(true)
{
n = scan.nextInt();
if( n > 0)
z++;
else if(n==0)
break;
else
f++;
}
System.out.println("正数个数为:"+z);
System.out.println("负数个数为:"+f);
}
2.求最大公约数。
3.求100以内的所有质数
public static void main(String[] args){
for(int i = 2; i <= 100; i++){
int flag = 1;
for(int j = 2; j <= Math.sqrt(i) ; j++){ //优化一对质数有效
if(i % j ==0){
flag = 0;
break; //优化二对非质数有效
}
}
if (flag == 1){
System.out.println(i);
}
}
}
4.break;continue。
label:for(int i = 1; i <= 4; i++){
for(int j = 1; j <= 10; j++){
if(j % 4 == 0){
continue label; //label 跳出指定循环
}
System.out.print(j);
}
}
5.随机生成数
//随机生成一个[10,99]的整数
(int)(Math.random()*(99 - 10 + 1) + 10)
6.冒泡排序
public static void main(String[] args) {
int[] arr = new int[] {1,2,6,5,4,7,8,9,98,05,45,4,3,5,6,};
for (int i = 0; i < arr.length - 1; i++) {
for(int j = 0; j < arr.length - i - 1;j++) {
if (arr[j]>arr[j+1]) {
int swap = 0;
swap = arr[j];
arr[j] = arr[j+1];
arr[j+1] = swap;
}
}
}
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]+" ");
}
}
7.各类排序
对数组常用的操作方法
二分查找
回行数