BannerStudio---BannerStudio20级第一阶段考核

简介: BannerStudio---BannerStudio20级第一阶段考核

考核题

第一题

/**
  *中国朋友们聚会时喜欢玩"逢7过"的游戏,老外有个同样的游戏,
  *FlipFlop,它从1计数到100,顺序输出。当遇到3的倍数就要
  *“Flip”,遇到5的倍数就要说“Flop”,既为3的倍数又为5的倍数
  *则要说“FlipFlop”,说错的话表演节目或罚酒。 
  **/
public class Test01 {
public static void main(String[] args) {
  for(int i=1;i<=100;i++) {
    if(i%3==0&&i%5==0) {
      System.out.println(i+":FlipFlop");
    }
    else if(i%3==0) {
      System.out.println(i+":Flip");
    }
    else if(i%5==0) {
      System.out.println(i+":Flop");
    }
  }
}
}

第二题

/**
  *在数学上有一个著名的斐波那契数列,它的规律为:
  *1,1,2,3,5,8,13,21……,请编程输出其前20个数字。
  */
  public class Test02 {
public static void main(String[] args) {
  int a=0,b=1;
  System.out.print(a+"  "+b+"  ");
  for(int i=0;i<9;i++) {
    a+=b;
    b+=a;
    System.out.print(a+"  "+b+"  ");
  }
}
}

第三题

/**
  *有两个已经排好序的数组,A:{9,28,38,40,56,65,78,82} 
  * B:{13,21,33,38,45},请定义一个新数组,将这两个数组中的数
  * 据合并到新数组中并且保证数据仍然是有序的。
  */
  public class Test03 {
public static void main(String[] args) {
  int[] A= {9,28,38,40,56,65,78,82};
  int[] B= {13,21,33,38,45};
  int[] C=new int [A.length+B.length];
  int a=0,b=0;
  for(int i=0;i<A.length+B.length;i++) {
    if(b<=B.length-1) {
    if(A[a]>B[b]) {
      C[i]=B[b];
      b++;
    }
    else {
      C[i]=A[a];
      a++;
    }
  }
    else {
      C[i]=A[a];
      a++;
    }
  }
  for(int D:C) {
    System.out.print(D+"  ");
  }
}
}

第四题

/**
  *输入一行字符,分别统计出其中英文字母、空格、
  *数字和其它字符的个数。
  */
  import java.util.Scanner;
public class Test04 {
public static void main(String[] args) {
  Scanner sc=new Scanner(System.in);
  String a=sc.nextLine();
  char[] b=a.toCharArray();
  int zm=0,sz=0,kg=0,ot=0;
  for(int i=0;i<b.length;i++) {
    if((b[i]>='a'&&b[i]<='z')||(b[i]>='A'&&b[i]<='Z')) {
      zm++;
    }
    else if(b[i]>='0'&&b[i]<='9') {
      sz++;
    }
    else if(b[i]==' ') {
      kg++;
    }
    else {
      ot++;
    }
  }
  System.out.print("字母有:"+zm+"\n数字有:"+sz+"\n空格有:"+kg+"\n其他符号有:"+ot);
}
}

第五题

/**
  *输出矩形、空心矩形、等腰三角形、菱形
  *例如这样的等腰三角形与菱形
  *等腰梯形和菱形用数字构成,且每入一行就多加一;
  *矩形用'*'来构成
  */
import java.util.Scanner;
public class Test05 {
public static void main(String[] args) {
  for(int i=1;i<=5;i++) {
    for(int j=1;j<=10;j++) {
      System.out.print("*");
  }
    System.out.println();
  }
  System.out.println("--------------------");
  for(int i=1;i<=5;i++) {
    for(int j=1;j<=10;j++) {
      if((i==1)||(i==5)) {
      System.out.print("*");
      }
      else {
        if(j==1||j==10) {
          System.out.print("*");
        }
        else {
          System.out.print(" ");
        }
      }
    }
    System.out.println();
  }
  System.out.println("--------------------");
  System.out.println("请定义三角形的边长");
  Scanner sc=new Scanner(System.in);
  int side=sc.nextInt();
  int change=1;
  for(int i=1;i<=side;i++) {
    for(int j=side-i;j>0;j--) {
      System.out.print(" ");
    }
    for(int p=1;p<=2*i-1;p++) {
    if(p==1) {
      System.out.print(change);
    }
      else if(p<=i){
        change++;
        System.out.print(change);
    }
      else {
        change--;
        System.out.print(change);
      }
    }
    System.out.println();
}
  System.out.println("--------------------");
  System.out.println("请定义菱形的边长");
   side=sc.nextInt();
   change=1;
  for(int i=1;i<=side;i++) {
    for(int j=side-i;j>0;j--) {
      System.out.print(" ");
    }
    for(int p=1;p<=2*i-1;p++) {
    if(p==1) {
      System.out.print(change);
    }
      else if(p<=i){
        change++;
        System.out.print(change);
    }
      else {
        change--;
        System.out.print(change);
      }
    }
    System.out.println();
}
  for(int i=side;i>=1;i--) {
    for(int j=side-i;j>0;j--) {
      System.out.print(" ");
    }
    for(int p=1;p<=2*i-1;p++) {
      if(p==1) {
        System.out.print(change);
      }
      else if(p<=i){
        change++;
        System.out.print(change);
    }
      else {
        change--;
        System.out.print(change);
      }
    }
    System.out.println();
}
}
}

第六题

/**小蓝给学生们组织了一场考试,卷面总分为100分,
  *每个学生的得分都是一个0到100的整数。
  *请计算这次考试的最高分,最低分和平均分。
  *[输入格式]输入的第一行包含一个整数n,表示考试人数。
  *接下来n 行, 每行包含一个0至100的整数,表示一个学生的得分。
  *[输出格式]输出三行。第一行包含一个整数, 表示最高分。
  *第二行包合一个整数, 表示最低分。
  *第三行包含一个实数,四舍五入保留正好两位小数,表示平均分。
  *[样例输入]
  *7
  *80
  *92
  *56
  *74
  *88
  *99
  *10
  *[样例输出]
  *99
  *10
  *71.29
  */
import java.util.Scanner;
public class Test06 {
public static void main(String[] args) {
  System.out.println("输入班里人数:");
  Scanner sc=new Scanner(System.in);
  int num=sc.nextInt();
  System.out.println("输入每一个同学的成绩:");
  int[] a=new int[num];
  for(int i=0;i<num;i++) {
    a[i]=sc.nextInt();
  }
    int temp=0;
    for(int j=0;j<num;j++) {
      if(a[j]>a[temp]) {
        temp=j;
      }
  }
    System.out.println("最高分为:"+a[temp]);
    int temp1=0;
    for(int j=0;j<num;j++) {
      if(a[j]<a[temp1]) {
        temp1=j;
      }
  }
    System.out.println("最低分为:"+a[temp1]);
    double pj=0;
    for(int i=0;i<num;i++) {
      pj+=a[i];
    }
    System.out.println("平均分为:"+String.format("%.2f",pj/num));
}
}

缓考题

第一题

/**
  *从1累加到100,但如果要累加的数据能被3整除,
  *并且也能被7整数,那么就不要累加这个数。
  *最后输出结果。
  */
public class Test07 {
public static void main(String[] args) {
  int a=0;
  for(int i=1;i<=100;i++) {
    if(i%3==0&&i%7==0) {
      continue;
    }
    a+=i;
  }
  System.out.println(a);
}
}

第二题

/**
  *求1+2!+3!+...+20!的和
  */
public class Test08 {
public static void main(String[] args) {
  long a=1,sum=0;
  for(int i=1;i<=20;i++) {
    a*=i;
    sum+=a;
  }
  System.out.println(sum);
}
}

第三题

/**
  *计算1/2+2/3+3/4+.....+19/20的和
  */
public class Test09 {
public static void main(String[] args) {
  float sum=0;
  for(float i=1;i<20;i++) {
    sum+=i/(i+1);
  }
  System.out.println(sum);
}
}

第四题

/**
  *有一个已经排好序的数组[1,3,5,9,11,13]。现输入一个数7,
  *要求按原来的规律将它插入数组中
  */
public class Test10 {
public static void main(String[] args) {
  int[] A= {1,3,5,9,11,13};
  int[] B=new int[A.length+1];
  for(int i=0;i<A.length;i++) {
    B[i]=A[i];
  }
  B[A.length]=7;
  for(int i=0;i<B.length;i++) {
    for(int j=0;j<B.length-1;j++) {
      if(B[j]>B[j+1]) {
        int temp=B[j];
        B[j]=B[j+1];
        B[j+1]=temp;
      }
    }
  }
  for(int C:B) {
    System.out.print(C+"  ");
  }
}
}

第五题

/**
  *小蓝要为一条街的住户制作门牌号。
  *这条街一共有 2020 位住户,门牌号从 1 到 2020 编号。
  *小蓝制作门牌的方法是先制作 0 到 9 这几个数字字符,
  *最后根据需要将字符粘贴到门牌上,
  *例如门牌 1017 需要依次粘贴字 符 1、 0、 1、 7,即需要 1 个字符 0, 2 个字符 1, 1 个字符 7。
  *请问要制作所有的 1 到 2020 号门牌,总共需要多少个字符 2?
  *打印输出
  */
  public class Test11 {
public static void main(String[] args) {
  int sum=0;
  for(int i=1;i<=2020;i++) {
    int a=i;
    do {
      if(a%10==2) {
        sum++;
      }
    }while((a/=10)>0);
  }
  System.out.print(sum);
}
}

第六题

/**
  *输入一个字符串,输出这个字母和它出现的次数。
  */
import java.util.Scanner;
public class Test12 {
public static void main(String[] args) {
  int max=0;
  Scanner sc=new Scanner(System.in);
  String s=sc.nextLine();
  int[] count=new int[127];
  for(int i=0;i<s.length();i++) {
    char  c=s.charAt(i);
    max=(++count[c]>max)?count[c] :max ;
  }
  System.out.println(max);
}
}

心得体会:

1.学的太浅,当遇到问题时脑海中不能找到相对应的方法去运行。

2.学的太少,在本次考核中有好多没见过的方法,这表明自己还是见到的题少,做的题也少。


相关文章
|
6月前
|
数据采集
医院绩效考核源码,强大的指标及考核方案自定义机制
医院绩效考核系统可根据"医、护、技、管理和后勤不同岗位的目标要求,制定和选取相应的考核指标、权重和分值,形成考核办法和计分规则。不同岗位采取不同的考核指标组合,以此构成针对性的绩效评估和激励。
|
8月前
|
存储 安全 项目管理
CMMI—组织级过程定义(OPD)
CMMI—组织级过程定义(OPD)
58 0
|
前端开发 Java API
BannerStudio---第四阶段考核项目(一)
BannerStudio---第四阶段考核项目
BannerStudio---第四阶段考核项目(一)
|
定位技术 API 索引
项目实战---行政优先级分析
在现有地点中解析其地点优先级,最小到区县,当前区县可指定作业优先级,当绑定优先级数据后的数据应在选择时优先展示。
52 0
|
数据采集 运维 安全
谈谈如何评估数据资产的价值​
数据是需要管理、部署和评估的业务资产。
谈谈如何评估数据资产的价值​
|
数据采集 消息中间件 分布式计算
项目七个阶段总体介绍|学习笔记
快速学习项目七个阶段总体介绍
99 0
项目七个阶段总体介绍|学习笔记
|
项目管理
【软件工程】CMMI 能力成熟度模型集成 ( CMMI 级别 | CMMI 级别、过程域、目标、实践 | CMMI 评估对象 | 过程域的 阶段式分组 | 过程域的 连续式分组 ) ★
【软件工程】CMMI 能力成熟度模型集成 ( CMMI 级别 | CMMI 级别、过程域、目标、实践 | CMMI 评估对象 | 过程域的 阶段式分组 | 过程域的 连续式分组 ) ★
281 0

热门文章

最新文章