文章目录
- 文章介绍
- 项目结构
- 1.案例Algorithm01
- 2.案例Algorithm02
- 3.案例Algorithm03
- 4.案例Algorithm04
- 5.案例Algorithm05
文章介绍
算法题
项目结构
1.案例Algorithm01
要求:使用冒泡排序算法对数组a={9, 7, 4, 6, 3, 1,10},按由小到大的规律排序数组中的元素。
代码
packageProgramDesign;publicclassAlgorithm01{publicstaticvoidmain(String[]args){int[]a={9,7,4,6,3,1,10};for(inti=0;i<a.length-1;i++){for(intj=0;j<a.length-1-i;j++){if(a[j]>a[j+1]){inttemp=a[j];a[j]=a[j+1];a[j+1]=temp;}}}System.out.println("冒泡排序结果:");for(intnum:a)System.out.print(num+" ");}}运行结果
2.案例Algorithm02
要求:输出100到300间所有能被7整除且不能被3整除的整数,每行输出5个。
代码
packageProgramDesign;publicclassAlgorithm02{publicstaticvoidmain(String[]args){System.out.println("100-300间能被7整除且不能被3整除的数(每行5个):");intcount=0;for(inti=100;i<=300;i++){if(i%7==0&&i%3!=0){System.out.print(i+" ");if(++count%5==0)System.out.println();}}}}运行结果
3.案例Algorithm03
要求:计算3到11之间(包括3和11)所有整数的阶乘和。
代码
packageProgramDesign;publicclassAlgorithm03{publicstaticvoidmain(String[]args){longsum=0;for(inti=3;i<=11;i++){longfact=1;for(intj=1;j<=i;j++)fact*=j;sum+=fact;}System.out.println("3到11的阶乘和:"+sum);}}运行结果
4.案例Algorithm04
要求:从键盘输入一个整数n,使用while设计程序计算从1到n的和。
代码
packageProgramDesign;importjava.util.Scanner;publicclassAlgorithm04{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.print("输入整数n:");intn=sc.nextInt(),sum=0,i=1;while(i<=n)sum+=i++;System.out.println("1到"+n+"的和:"+sum);sc.close();}}运行结果
5.案例Algorithm05
要求:从键盘输入一个4位整数n,计算各位数字的和。例如:n=3214,其各位数字和为3+2+1+4=10。
代码
packageProgramDesign;importjava.util.Scanner;publicclassAlgorithm05{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.print("输入4位整数:");intn=sc.nextInt(),sum=0,temp=n;if(n<1000||n>9999){System.out.println("非4位整数!");return;}while(temp>0){sum+=temp%10;temp/=10;}System.out.println(n+"的各位和:"+sum);sc.close();}}运行结果