java编程练习(2)

1、编写程序数一下 1到 100 的所有整数中出现多少个数字9。

public class test{
    public static void main(String[] args) {
        int count = 0;
        for(int i=0;i <= 100;i++){
            if(i%10==9){
                count++;
            }//统计个位为9的次数
             if(i/10==9){
                count++;
            }//统计十位为9的次数                   
        }
        System.out.println("数字9出现的次数:"+count);
    }           
}

2、求出0~999之间的所有“水仙花数”并输出。(“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身,如;153=1+5+3?,则153是一个“水仙花数”。)

public class test {
  
    public static void main(String[] args) {
        int ind = 0;
        int tend = 0;
        int hud = 0;
        for(int i = 100;i <= 999;i++){
            ind = i % 10;//取个位
            tend = i/10%10;//取十位
            hud  = i/100;//取百位
            if(i==Math.pow(ind,3)+Math.pow(tend,3)+Math.pow(hud,3)){
               System.out.println(i+"是水仙花数"); 
            }            
        }
    }       
}  

3、编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输入,最多输入三次。三次均错,则提示退出程序

import java.util.Scanner;

public class test{
    public static void main(String[] args) {
        System.out.println("欢迎进入登录系统,您有三次机会输入密码!");
        for(int i=1;i<=3;i++){
            Scanner scanner = new Scanner(System.in);
            String password = scanner.nextLine();
            if("888888".equals(password)){
                System.out.println("登陆成功!");
                break;
            }else{
                System.out.println("密码错误,您还有"+(3-i) + "次机会!");
            }
        }
        
    }
}

4、 写一个函数返回参数二进制中 1 的个数 比如:(15) 0000 1111 4 个 1

import java.util.Scanner;

public class test {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        System.out.println("请输入一个整数:");
        int num = scanner.nextInt();
        int count = 0;
        while(num>0) {
            num = num & (num-1);
            count ++;                   
        }
    System.out.println("转换成二进制1的个数为:" + count);
    }
}

5、获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。

import java.util.Scanner;

public class test{
  public static void main(String[] args) {
    Scanner scanner=new Scanner(System.in);
    System.out.println("请输入一个数:");
    int num = scanner.nextInt(); 
    int i = 0;
    System.out.println("奇数序列为:");
    for( i=31;i>=0;i-=2) {
      System.out.print((num>>i) & 1 );
    } 
    System.out.println();
    System.out.println("偶数序列为:");
    for( i=30;i>=0;i-=2) {
      System.out.print((num>>i) & 1);
    } 
    System.out.println();
  }
}

6、 输出一个整数的每一位.

import java.util.Scanner;

public class test {
  public static void main(String[] args) {
    Scanner scanner=new Scanner(System.in);
    System.out.println("请输入一个整数:");
    int num = scanner.nextInt();   
    Print(num);
  }
  public static void Print(int num) {
    if (num > 9) {
      Print(num / 10);
    }
    System.out.print(num % 10 + " ");   
  }
} 

7、完成猜数字游戏

import java.util.Scanner;
import java.util.Random;

public class GuessNumber {
  public static void main(String[] args) {
    Random random = new Random();
    Scanner scanner = new Scanner(System.in);
    int toGuess = random.nextInt(101);
    while(true){    
    System.out.println("请输入一个数(1到100):");
    int num = scanner.nextInt(); 
    if(num<toGuess){
      System.out.println("低了!");
    } else if(num>toGuess){
      System.out.println("高了!");
    } else {
      System.out.println("猜对了!");
      break;
    }
    }
  }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值