JAVA经典算法50题(2)

时间:2026-01-19

int n) {
for (int i = 2; i <= n; i++) {
if (n % i == 0) {
System.out.print(i);
if(n!=i){
System.out.print("*");
}
fenjie(n/i);
}
}
System.exit(0); //退出程序
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("请输入N的值:");
int N = in.nextInt();
System.out.print( "分解质因数:" + N +"=");
new Demo04().fenjie(N);
}
}

【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
1.程序分析:(a>b)?a:b这是条件运算符的基本例子。
import java.util.Scanner;
public class Demo05 {
public static void main(String[] args) {
System.out.println("请输入N的值:");
Scanner in = new Scanner(System.in);
int N = in.nextInt();
System.out.println(N >= 90 ?"A": (N >= 60 ? "B":"C"));
}
}

【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
1.程序分析:利用辗除法。
import java.util.Scanner;
public class Demo06 {
public static void main(String[] args){
int a,b,m,n;
Scanner in=new Scanner(System.in);
System.out.println("请输入一个正整数:");
a=in.nextInt();
System.out.println("再输入一个正整数:");
b=in.nextInt();
commonDivisor use=new commonDivisor();
m=monDivisor(a,b);
n=a*b/m;
System.out.println("最大公约数:"+m);
System.out.println("最小公倍数:"+n);
}
}
class commonDivisor{
public int commonDivisor(int x,int y){
if(x<y){
int t=x;
x=y;
y=t;
}
while(y!=0){
if(x==y)return x;
else{
int k=x%y;
x=y;
y=k;
}
}
return x;
}
}

【程序7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
1.程序分析:利用for循环语句,if条件语句。
import java.util.Scanner;

public class Demo07 {
public static void main(String[] args){
System.out.println("请输入一个字符串:");
Scanner in=new Scanner(System.in);
String str=in.nextLine();
char[] ch=str.toCharArray();
count use=new count();
use.count(ch);
}
}
class count{
int digital,character,blank,other;
public void count(char[] arr){
for(int i=0;i<arr.length;i++){
if(arr[i]>='0'&&arr[i]<='9'){
digital++;
}else if((arr[i]>='a'&&arr[i]<='z')||(arr[i]>='A'&&arr[i]<='Z')){
character++;
}else if(arr[i]==' '){
blank++;
}else{
other++;
}
}
System.out.println("数字个数:"+digital);
System.out.println("英文字母个数:"+character);
System.out.println("空格个数:"+blank);
System.out.
println("其他字符个数:"+other);
}
}

【程序8】 题目:求s = a + aa + aaa + aaaa + aa...a的值,其中a是一个数字。例如2 + 22 + 222 + 2222 + 22222(此时共有5个数相加),几个

…… 此处隐藏:63字,全部文档内容请下载后查看。喜欢就下载吧 ……
JAVA经典算法50题(2).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:4.9 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:19元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219