语句练习1

水仙花数:

//一个数拆分求立方和
1
int count1=0; 2 int bw,sw,gw,sum; 3 for(int i=100;i<1000;i++) 4 { 5 bw=i/100;//求百位上的数 6 sw=(i-bw*100)/10;//求十位上的数 7 gw=i%10;//求各位上的数 8 sum=bw*bw*bw+sw*sw*sw+gw*gw*gw; 9 if(sum==i) 10 { 11 count1++; 12 System.out.print(i+"\t"); 13 if(count1%5==0) 14 {System.out.println();} 15 } 16 } 17 System.out.println("一共有"+count1+"个水仙花数!");
        //三个数字组合 求立方和
        for(int a=1;a<10;a++){
            for(int b=0;b<=10;b++){
                for(int c=0;c<=10;c++){
                     int d=a*100+b*10+c;
                     if(a*a*a+b*b*b+c*c*c==d)
                     {
                         System.out.println(d);
                     }
                }
            }
        }

 

结果:

百鸡百文:

5文钱可以买一只公鸡,3文钱可以买一只母鸡,1文钱可以买3只雏鸡。现在用100文钱买100只鸡,那么各有公鸡、母鸡、雏鸡多少只?

 

 1         int gj, mj,xj,count2=0;//说明  gj  mj 分别表示公鸡与母鸡的数量   只有xj 表示 买小鸡花的钱
 2         for(gj=0;gj<=20;gj++){
 3             for(mj=0;mj<=33;mj++){
 4                 for(xj=0;xj<=100;xj++){//因为最多买100只鸡 所以小鸡最多有100只
 5                     if(5*gj+3*mj+xj==100&&gj+mj+xj*3==100)
 6                     {
 7                         count2++;
 8                         System.out.println("100文能买"+gj+"只公鸡"+mj+"只母鸡"+xj*3+"只小鸡");
 9                     }
10                 }
11             }
12         }
13         System.out.println("共有"+count2+"种可能!");

运行结果:

100文能买0只公鸡25只母鸡75只小鸡
100文能买4只公鸡18只母鸡78只小鸡
100文能买8只公鸡11只母鸡81只小鸡
100文能买12只公鸡4只母鸡84只小鸡
共有4种可能!

百马百担:

有一百匹马,驮一百担货,大马驮3担,中马驮2担,两只小马驮1担,问有大,中,小马各几匹?

        int dm,zm,xm,count3=0;
        for(dm=0;dm<=33;dm++){
            for(zm=0;zm<=50;zm++){
                for(xm=0;xm<=100;xm++){//小马最多只能有100匹
                    if(dm*3+zm*2+xm*.5==100&&dm+zm+xm==100)
                    {
                        count3++;
                        System.out.println("大马"+dm+"匹,中马"+zm+"匹,小马"+xm+"匹。");
                    }
                }
            }
        }
        System.out.println("共有"+count3+"种可能!");

运行结果:

九九乘法表:

1         for(int i=1;i<10;i++){
2             for(int j=1;j<=i;j++){
3                 System.out.print(j+"x"+i+"="+i*j+"\t");
4             }
5             System.out.println();//每结束一个i  换行
6         }

运行结果:

输出三角形:

 1         Scanner sc=new Scanner(System.in);
 2         System.out.print("请输入打印行数:");
 3         int n=sc.nextInt();
 4         for(int i=1;i<=n;i++){
 5             for(int j=1;j<=n-i;j++){
 6                 System.out.print("    ");//首先打印空格
 7             }
 8             for(int k=1;k<=2*i-1;k++){
 9                 System.out.print("★");
10             }
11             System.out.println();
12         }

运行结果:

打印菱形:

 1         Scanner sc2=new Scanner(System.in);
 2         System.out.print("请输入打印行数:");
 3         int N=sc.nextInt();
 4         //首先打印菱形的上半部分
 5         for(int i=1;i<=N;i++){
 6             for(int j=1;j<=N-i;j++){
 7                 System.out.print("    ");
 8             }
 9             for(int k=1;k<=2*i-1;k++){
10                 System.out.print("★");
11             }
12             System.out.println();
13         }
14         //打印菱形的下半部分
15         for(int x=N-1;x>0;x--){//因为下半部分的第一行与上半部分的最后一行会重复  所以要比上半部分少打印一行
16             for(int y=1;y<=N-x;y++){
17                 System.out.print("    ");
18             }
19             for(int z=1;z<=2*x-1;z++){
20                 System.out.print("★");
21             }
22             System.out.println();
23         }

运行结果:

冒泡排序:

 1         //定义扫描器
 2         Scanner ar=new Scanner(System.in);
 3         System.out.print("请输入需要排序的数字个数:");
 4         int Nt=ar.nextInt();
 5         int arr[]=new int[Nt];//定义一个数组 用来存放排序的数字
 6         //输入需要排序的数字 并存入数组中
 7         for(int i=0;i<Nt;i++){
 8             System.out.print("请输入第"+(i+1)+"个数字:");
 9             arr[i]=ar.nextInt();
10         }
11         //比较  进行排序
12         for(int j=0;j<Nt;j++){            
13             for(int k=0;k<Nt-j-1;k++){
14                 if(arr[k]>arr[k+1]){//判断两个数的大小
15                     int temp=arr[k];
16                     arr[k]=arr[k+1];
17                     arr[k+1]=temp;                    
18                 }
19             }
20             //每全部比较一遍之后  输出排序的结果
21             System.out.print("第"+(j+1)+"次的排序结果:");
22             for(int i=0;i<Nt;i++){
23                 System.out.print(arr[i]+"\t");
24             }
25             System.out.println();
26         }
27         //输出最终的排序结果
28         System.out.print("排序结果:\t");
29         for(int i=0;i<Nt;i++){
30             System.out.print(arr[i]+"\t");
31         }

运行结果:

posted @ 2016-05-07 21:04  唐枫  阅读(326)  评论(0编辑  收藏  举报