1.古典问题:有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
//这是一个菲波拉契数列问题
public class test1 {
public static void main(String args[]){
int f1=2,f2=2,temp;
System.out.printf("第1个月有2只兔子\n");
System.out.printf("第2个月有2只兔子\n");
for(int i=3;i<=24;i++){
temp=f2;
f2=f1+f2;
f1=temp;
System.out.printf("第%d个月有%d只兔子\n",i,f2);
}
}
}
2.判断101-200 之间有多少个素数,并输出所有素数。
public class test2 {
public static void main(String args[]){
int k=0;
for(int i=101;i<=200;i++){
if(check(i)==1){
System.out.println(i);
k++;
}
}
System.out.printf("有%d个素数",k);
}
public static int check(int n){
int flag=0;
for(int i=2;i<n;i++){
if(n%i==0){
flag=0;
break;
}
else{
flag=1;
}
}
return flag;
}
}
3.打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153 是一个 "水仙花数 ",因为 153=1 的三次方+5 的三次方+3 的三次方。
public class test3 {
public static void main(String args[]){
for(int i=100;i<1000;i++){
if(Math.pow((i/1%10),3)+Math.pow((i/100%10),3)+Math.pow((i/10%10),3)==i){
System.out.println(i);
}
}
}
}
4.将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
public class test4 {
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
int n= sc.nextInt();
System.out.printf("%d=",n);
int k=2;
while(k<=n){
if(k==n){
System.out.println(n);
break;
}
else if(n%k==0){
System.out.printf(k+"*");
n=n/k;
}
else{
k++;
}
}
}
}
5.利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B 表示,60 分以下的用C 表示。
public class test5 {
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
char grade;
int x=sc.nextInt();
grade=x>=90?'A':x>=60?'B':'C';
System.out.println("等级为:"+grade);
}
}
6.输入两个正整数m 和n,求其最大公约数和最小公倍数。
public class test6 {
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
int b=sc.nextInt();
int max,n=a*b;
int temp;
if(a<b){ //把a当做大数
temp=a;
a=b;
b=temp;
}
while(b!=0){
if(a==b){
max=a;
}
else{
int k=a%b;
a=b;
b=k;
}
}
max=a;
int min=n/max;
System.out.printf("最大公约数:%d,最小公倍数:%d",max,min);
}
}
7.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
public class test7 {
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
int shuzi=0,zimu=0,kongge=0,qita=0;
char[] c=null;
String s=sc.nextLine();
c=s.toCharArray();
for(int i=0;i<c.length;i++){
if('0'<=c[i]&&c[i]<='9'){
shuzi++;
}
else if(('a'<=c[i]&&c[i]<='z')||('A'<=c[i]&&c[i]<='Z')){
zimu++;
}
else if(c[i]==' '){
kongge++;
}
else{
qita++;
}
}
System.out.printf("数字:%d,字母:%d,空格:%d,其他:%d",shuzi,zimu,kongge,qita);
}
}
8.求s=a+aa+aaa+aaaa+aa...a 的值,其中a 是一个数字。例如2+22+222+2222+22222(此时共有5 个数相加),几个数相加有键盘控制。
public class test8 {
public static void main(String srgs[]){
Scanner sc=new Scanner(System.in);
System.out.printf("这个数是:");
int a=sc.nextInt();
System.out.printf("几个这个数相加:");
int n=sc.nextInt();
int sum=0,b=0;
for(int i=1;i<=n;i++){
b=b+a;
sum=sum+b;
a=a*10;
System.out.println(b);
}
System.out.println(sum);
}
}
9.一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000 以内的所有完数。
public class test9 {
public static void main(String args[]) {
for(int i=1;i<1000;i++){
int sum=0;
for(int j=1;j<i;j++){
if(i%j==0){
sum=sum+j;
}
}
if(sum==i){
System.out.println(i+" ");
}
}
}
}
10.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10 次落地时,共经过多少米?第10 次反弹多高?
public class test10 {
public static void main(String args[]){
double a=100,c=100;
for(int i=1;i<=10;i++){
c=c+a;
a=a/2;
}
System.out.printf("共经过"+c+"米\n");
System.out.printf("第10次反弹"+a+"米");
}
}
11.有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
public class test11 {
public static void main(String args[]){
int count=0;
for(int i=1;i<5;i++){
for(int j=1;j<5;j++){
for(int k=1;k<5;k++){
if(i!=j&&i!=k&&j!=k){
System.out.println(i*100+j*10+k);
count++;
}
}
}
}
System.out.println("共有"+count+"个数");
}
}
12.企业发放的奖金根据利润提成。利润(I)低于或等于 10 万元时,奖金可提 10%;利润高于 10 万元,低于 20 万元时,低于 10 万元的部分按 10%提成,高于 10 万元的部分,可提成 7.5%;20 万到 40 万之间时,高于 20 万元的部分,可提成 5%;40 万到 60 万之间时高于 40 万元的部分,可提成 3%;60 万到 100 万之间时,高于 60 万元的部分,可提成1.5%,高于 100 万元时,超过 100 万元的部分按 1%提成,从键盘输入当月利润,求应发放奖金总数?
public class test12 {
public static void main(String args[]){
double jiangjin=0;
Scanner sc=new Scanner(System.in);
double x=sc.nextDouble();
if(10<=x){
jiangjin=x*0.1;
}
if(10<x&&x<=20){
jiangjin=10*0.1+(x-10)*0.075;
}
if(20<x&&x<=40){
jiangjin=10*0.1+10*0.075+(x-20)*0.05;
}
if(40<x&&x<=60){
jiangjin=1

最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



