zoukankan      html  css  js  c++  java
  • 两个小程序

    一  编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,要保证汉字不被截取半个,

      如“我ABC”,4 ,应该截取"我AB",输入"我ABC汉DEF",6,应该输出"我ABC",而不是“我ABC+汉字的半个”。

        public static void main(String[] args) {
          String str = "我ABC汉";
          int num = trim(str.getBytes(),6);
          System.out.println(num);
          System.out.println(str.substring(0,num));
        }

        public static int trim(byte[] buf ,int n) {
          int num = 0;
          boolean ifChineseHalf = false;
          for(int i = 0;i < n;i++) {
            if(buf[i] < 0&&!ifChineseHalf) {
              ifChineseHalf = true;
            }else {
              num++;
              ifChineseHalf = false;
            }
          }
          return num;
        }

    二  一个整数,大于0,不用循环和本地变量,按照n,2n,4n,8n顺序递增,当值大于5000时,把值按照顺序打印出来,

        例如: n =1237 ,输出为1237,2474,4948,9896,9896,4948,2474,1237

       public static void doubleNum(int n) {

        System.out.println(n);
        if(n <= 5000)
        doubleNum(n*2);
        System.out.println(n);
       }

      

        

  • 相关阅读:
    java作业利用递归解决问题
    java课堂测试2(两种方式)
    java模拟验证码生成
    java选做猜数字
    java课堂动手测试
    java课堂作业,求多参数的和
    《大道至简》第一章伪代码形式读后感
    《大道至简》读后感
    关于《大道至简》第八章的收获
    [JLOI2012]树 倍增优化
  • 原文地址:https://www.cnblogs.com/rcjs/p/7607233.html
Copyright © 2011-2022 走看看