/**在循环中,只要除数不等于0,用较大数除以较小的数,将小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环的较小的数,如此循环直到较小的数的值为0,返回较大的数,此数即为最大公约数,最小公倍数为两数之积除以最大公约数。* / import java.util.*; public class lianxi06 { public static void mainString[] args { int a ,b,m; Scanner s new ScannerSystem.in; System.out.print “键入一个整数 “; a s.nextInt; System.out.print “再键入一个整数 “; b s.nextInt; deff cd new deff; m cd.deffa,b; int n a * b / m; System.out.println“最大公约数 “ m; System.out.println“最小公倍数 “ n; } } class deff{ public int deffint x, int y { int t; ifx y { t x; x y; y t; } whiley 0 { ifx y return x; else { int k x y; x y; y k; } } return x; } } 【程序7】 题目输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
import java.util.*; public class lianxi07 { public static void mainString[] args { int digital 0; int character 0; int other 0; int blank 0; char[] ch null; Scanner sc new ScannerSystem.in; String s sc.nextLine; ch s.toCharArray; forint i0; i 0 } else ifch { blank ; } else { other ; } } System.out.println“数字个数 “ digital; System.out.println“英文字母个数 “ character; System.out.println“空格个数 “ blank; System.out.println“其他字符个数“ other ; } } 【程序8】 题目求saaaaaaaaaaaa...a的值,其中a是一个数字。例如222222222222222此时共有5个数相加,几个数相加有键盘控制。
import java.util.*; public class lianxi08 { public static void mainString[] args { long a , b 0, sum 0; Scanner s new ScannerSystem.in; System.out.print“输入数字a的值 “; a s.nextInt; System.out.print“输入相加的项数“; int n s.nextInt; int i 0; whilei n { b b a; sum sum b; a a * 10; i; } System.out.printlnsum; } } 【程序9】 题目一个数如果恰好等于它的因子之和,这个数就称为 “完数 “。例如61+2+3.编程 找出1000以内的所有完数。
public class lianxi09 { public static void mainString[] args { System.out.println“1到1000的完数有 “; forint i1; i1000;