background image

     for(int m=101; m<1000; m++) { 
      b3 = m / 100;
      b2 = m % 100 / 10;
      b1 = m %    10;
      if((b3*b3*b3 + b2*b2*b2 + b1*b1*b1) == m) {
      System.out.println(m+"是一个水仙花数"); }
     }
}
}   
【程序

4】   

题目:将一个正整数分解质因数。例如:输入

90,打印出 90=2*3*3*5。   

程序分析:对

n 进行分解质因数,应先找到一个最小的质数 k,然后按下述步骤完成:   

(1)如果这个质数恰等于 n,则说明分解质因数的过程已经结束,打印出即可。   
(2)如果 n <> k,但 n 能被 k 整除,则应打印出 k 的值,并用 n 除以 k 的商,作为新的正整
数你

n,重复执行第一步。   

(3)如果 n 不能被 k 整除,则用 k+1 作为 k 的值,重复执行第一步。  
import java.util.*;
public     class     lianxi04{ 
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.print( "请键入一个正整数:     "); 
        int    n    = s.nextInt();
        int k=2; 
        System.out.print(n + "=" );
        while(k <= n) {
          if(k == n) {System.out.println(n);break;}
            else if( n % k == 0) {System.out.print(k + "*");n = n / k; } 
                    else    k++;
                   }
     }
    } 
【程序

5】   

题目:利用条件运算符的嵌套来完成此题:学习成绩

> =90 分的同学用 A 表示,60-89

分之间的用

B 表示,60 分以下的用 C 表示。   

import java.util.*;
public class lianxi05 {
public static void main(String[] args) {
     int x;
     char grade;
     Scanner s = new Scanner(System.in);
     System.out.print( "请输入一个成绩: "); 
     x = s.nextInt();  
     grade = x >= 90 ? 'A'
           : x >= 60 ? 'B'