JAVA基础编程题(一)、循环练习

mac2024-08-04  55

一、循环练习

1、求1~100的和

int sum = 0; for(int i=1;i<=100;i++){ sum+=i; } System.out.println(sum);

2、求1~100所有偶数的和

int sum = 0; for(i=1;i<=100;i++){ if(i%2==0){ sum+=i; } } System.out.println(sum);

3、求10! .注:10! = 10*9*8…*1

int i3=1; for(int i=1;i<=10;i++){ i3*=i; } System.out.println(i3);

3.1、求10!+9!+8!+…+1! = ?

int jc=1; int sum=0; for(int i=1;i<=10;i++){ jc*=i;//2!*3=3,3!*4=4! sum+=jc; } System.out.println(sum);

4、打印出如下图形 //********* //********* //********* //********* //*********

for(int i =1;i<=5;i++){ for(int j=1;j<=9;j++){ System.out.print("*"); } System.out.println(); }

5、打印出如下图形 //* //** //*** //**** //***** //******

for(int i=1;i<=6;i++){ for(int j=1;j<=i;j++){ System.out.print("*"); } System.out.println(); }

5.1、打印出如下图形 //* //*** //***** //******* //********* //***********

for(int i=1;i<=6;i++){ for(int j=1;j<=i+(i-1);j++){ System.out.print("*"); } System.out.println(); }

5.2、打印出如下图形 // a // bbb // ccccc // 4444444 // 555555555 // 66666666666 //7777777777777`

char c1='a'; for(int i=1;i<=7;i++){ for(int k=6-i;k>=0;k--){//总行数减1,减当前行数 System.out.print(" "); } for(int j=1;j<=i+(i-1);j++){ if(c1<='c'){ System.out.print(c1); }else{ System.out.print(i); } } c1++; System.out.println(); }

6、打印出如下图形 //a //bb //ccc //dddd //eeeee

char c2 = 'a'; for(int i=1;i<=5;i++){ for(int j=1;j<=i;j++){ System.out.print(c2); } c2++; System.out.println(); }

7、求所有三位数的水仙花数。

for(int i=100;i<1000;i++){ int gw = i%10; int sw = i/10%10; int bw = i/100; if(gw*gw*gw+sw*sw*sw+bw*bw*bw==i){ System.out.println(i); } }

8、九九乘法表

for(int i=1;i<=9;i++){ for(int j=1;j<=i;j++){ System.out.print(i+"*"+j+"="+(i*j)+"\t"); } System.out.println(); }

9、求1-100所有质数(素数)的和

int sum=0; for(int i=2;i<=100;i++){ boolean flag = true; for(int j=2;j<i;j++){ if(i%j==0){ flag=false; break; } } if(flag){ sum+=i; System.out.println(i); } } System.out.println(sum);

9.1、打印101~200的素数

for(int i=101;i<=200;i++){ boolean flag = true; for(int j=2;j<i;j++){ if(i%j==0){ flag = false; break; } } if(flag){ System.out.print(i+","); } }

10、已知一只公鸡5块钱,母鸡3块钱,小鸡1块钱3只,问100块钱买100只鸡有哪些方案?

for(int i=0;i<=20;i++){ for(int j=0;j<=33;j++){ for(int k=0;k<=99;k+=3){ if(i+j+k==100&&5*i+3*j+k/3==100){ System.out.println("公鸡:"+i+" "+"母鸡:"+j+" "+"小鸡:"+k); } } } }

11、冒泡排序

//冒泡排序:自左到右,比较两个相邻的元素,将值大的元素交换至右端 int[] arr = {23,-98,89,9,78,0}; for(int i=1;i<arr.length;i++){//比较的次数 for(int j=0;j<arr.length-i;j++){// if(arr[j]>arr[j+1]){//相邻的两个数比较大小 int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } for(int i=0;i<arr.length;i++){//遍历数组 System.out.println(arr[i]); }

12、选择排序

//选择排序:从左到右, int[] arr = {23,-98,89,9,78,0}; for(int i=0;i<arr.length;i++){//前一个比较的数 for(int j=i;j<arr.length;j++){//后一个比较的数 if(arr[i]>arr[j]){ int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } } for(int i=0;i<arr.length;i++){//遍历数组 System.out.print(arr[i]+","); }
最新回复(0)