阶乘和
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个数:");
int n=sc.nextInt();
System.out.println("阶乘和为:"+ret(n));
}
public static int ret(int n){
int sum=0;
int ret=1;
//求阶乘
int i,j;
for(i=1;i<=n;i++){
ret=1;
for(j=1;j<=i;j++){
ret*=j;
}
sum+=ret;
}
return sum;
}
六合数
public static void main(String[] args) {
//六合数
int num;
for(num=0;num<999999;num++){
int count=0;
int tmp=num;
while(tmp!=0) {
count++;
tmp=tmp/10;
}//判断位数
tmp=num;
int j;
int sum=0;
for(j=0;j<count;j++){
int ret;
int a;
int b=(int)Math.pow(10,j);
a=(num/b)%10;
ret=(int)Math.pow(a,6);
sum+=ret;
}
if(num==sum){
System.out.println(num);
}
}
}
最大值方法重载
public static void main(String[] args) {
int max=returnMAX(5,6);
System.out.println("整数最大值为 "+max);
double max2=returnMAX(5.89,101.534);
System.out.println("小数最大值为 "+max2);
}
public static int returnMAX(int a,int b) {
return (a>b)?a:b;
}
public static double returnMAX(double a,double b) {
return (a>b)?a:b;
}
递归-单独打印出每个数的每一位
public static void main(String[] args) {
everyOne(1235);
}
public static void everyOne(int a){
if(a<10){
System.out.println(a%10);;
return ;
}
everyOne(a/10);
System.out.println(a%10);
}
递归-求任意一个数的每一位相加的值
public static void main(String[] args) {
sumEvery(1024);
}
public static int sumEvery(int n){
int sum=0;
if(n<10){
return n;
}
return n%10+sumEvery(n/10);
}
递归-斐波那契数列
public static void main(String[] args) {
System.out.println(fib(6));
}
public static int fib(int n){
if(n==1||n==2){
return 1;
}
return fib(n-2)+fib(n-1);
}
数组-元素均值+打印输出
public class array {
public static void main(String[] args) {
int []array1={1,2,3};
System.out.println(Arrays.toString(array1));
System.out.println(avg(array1));
}
public static int avg(int []array){
int sum=0;
for(int x:array){
sum+=x;
}
return sum/array.length;
}
}
数组-更改每个元素值
public static void main(String[] args) {
int []array1={2,4,5,7};
transform(array1);
System.out.println(Arrays.toString(array1));
}
public static void transform(int []array){
int i=0;
for(i=0;i<array.length;i++){
array[i]=2*array[i];
}
}
数组-100个元素值分别为1...100
public static void main(String[] args) {
int N=100;
int i=0;
int []array=new int [N];
for(i=0;i<array.length;i++){
array[i]=i+1;
}
System.out.println(Arrays.toString(array));
}
数组-冒泡排序
public static void main(String[] args) {
int []array={15,57,2,34,68};
System.out.println(Arrays.toString(array));
Bubble(array);
System.out.println(Arrays.toString(array));
}
public static void Bubble(int []array){
int i,j;
//i代表的是趟数
for(i=0;i<array.length-1;i++){
boolean flg=false;
for(j=0;j<array.length-i-1;j++){
if(array[j]>array[j+1]){
int tmp=array[j+1];array[j+1]=array[j];array[j]=tmp;
flg=true;
}
}
if(!flg){
break;
}
}
}