19年内大892真题参考答案

package javaapplication4;

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 *
 * @author lenovo
 */
public class JavaApplication4 {

    /**
     * @param args the command line arguments
     * 19年复试题
     * 1、输入成绩,计算平均分,记录低于平均分的人数,并将低于平均分的成绩输入到数组中
     * 2、递归求解数组最大值
     * 3、求解一元二次方程组
     * 4、向左平移
     * 5、矩阵乘法
     * 6、输入工人工资,要求从大到小排序,并以链表形式存储并输出
     * 7、快速排序
     * 
     * 19年初试题
     * 1、求解一个整数到另一个整数之间的偶数和(18年初试还是复试来着,有这么一道题)
     * 2、一元二次方程的根(同19年复试题)
     * 3、求解1~100之间3的倍数(17年还是几几年有这么一道类似)
     * 4、递归求解最大公约数,最小公倍数
     * 5、输入一个字符串如829ehdjd32,输出829 32
     * 6、设计一个计算器
     */
    
    public static void main(String[] args) {
      /*   Scanner sc =new Scanner(System.in);
         int a[]=new int[10];
         int sum=0;
         int count=0;
         double average=0;
         for(int i=0;i<10;i++){
             a[i]=sc.nextInt();//输入成绩
             sum+=a[i];
         }
         average=sum/10.0;
          for(int i=0;i<10;i++){
          if(average>a[i]){
              count++;
          }
              }
          int b[]=new int[count];
          int index=0;
           for(int i=0;i<10;i++){
          if(average>a[i]){
              b[index]=a[i];
              index++;
          }
    }
           for(int i=0;i<count;i++){
               System.out.println(b[i]);
           }
    }}*/
     /*   Scanner sc =new Scanner(System.in);
        int n=sc.nextInt();
         int a[]=new int[n];
          for(int i=0;i<n;i++){
             a[i]=sc.nextInt();}
      int max= findMax(a,0,a.length);
      System.out.println(max);
    }
public  static int findMax(int a[],int left,int right){
        int x;
        int y;
    if(left==right){
        return a[0];
    }
    else{
         x=a[left];
         y=findMax(a,left+1,right);
         if(x>y) return x;
         else return y;}
    
        
}}*/
     Scanner sc =new Scanner(System.in);
        int n=sc.nextInt();
        int a[]=new int[n];
         for(int i=0;i<n;i++){
           System.out.println("please enter the"+(i+1)+"number");
           a[i]=sc.nextInt();}
         int b=max(a,0);
           System.out.println("the largest is"+b);
          
               }
               
     public static int max( int a[],int n){//递归求解最大值
               if(n==a.length-1)
                   return a[n];
               else{
                  return a[n]>max(a,n+1)?a[n]:max(a,n+1);
                   }}}
      
     /*   Scanner sc =new Scanner(System.in);
//程序不是很全面,遇到有根号的无法解决
        int temp=0;
        int m=0;
        int n=0;
        int sum=0;
        System.out.println("请输入a的值");
        int a= sc.nextInt();
        System.out.println("请输入b的值");
        int b= sc.nextInt();
         System.out.println("请输入c的值");
        int c= sc.nextInt();
        int d = b*b-4*a*c;
        if(d<0){
           System.out.println("无解");
        }
        if(d==0){
            int x=(int) (-b+Math.sqrt(b*b-4*a*c))/2*a;
            System.out.println(x);
        }
        else if(d>0) {
             int x1=(int) (-b+Math.sqrt(b*b-4*a*c))/2*a;
              int x2=(int) (-b-Math.sqrt(b*b-4*a*c))/2*a;
                 System.out.println("其中一个解是:"+x1);
                    System.out.println("另外一个解是:"+x2);
        }
        
    }
  
 
        
}*/
/*Scanner sc =new Scanner(System.in);
int n =sc.nextInt();//输入移动长度
String str=sc.next();//输入字符串
int t=n%str.length();//以防输入的长度大于字符串长度
String str1=str.substring(t, str.length());
String str2=str.substring(0, t);
System.out.println(str1+str2);
    }}*/
/*Scanner sc =new Scanner(System.in);
  //输入两个二维数组,需要分别定义数组的长度
  int al=sc.nextInt();
  int aw=sc.nextInt();
  int bl=sc.nextInt();
  int bw=sc.nextInt();
  int a[][]=new int[al][aw];
  int b[][]=new int[bl][bw];
  if(aw!=bl){
      System.out.println("两个数组不能相乘");
      return;
        }
  int c[][]=new int[al][bw];
  for(int i=0;i<al;i++){
      for(int j=0;j<aw;j++){
          a[i][j]=sc.nextInt();
      }
  }
    for(int i=0;i<bl;i++){
      for(int j=0;j<bw;j++){
          b[i][j]=sc.nextInt();
      }
  }
    for(int i=0;i<al;i++){
        for(int j=0;j<bw;j++){
            for(int k=0;k<aw;k++){
                c[i][j]+=a[i][k]*b[k][j];
            }
        }
    }
    for(int i=0;i<al;i++){
        for(int j=0;j<bw;j++){
            System.out.print(c[i][j]+" ");
    }System.out.println();
    }}}*/
   /* Scanner sc =new Scanner(System.in);
        JavaApplication4 jal =new JavaApplication4();
        int n =sc.nextInt();
        int a[]=new int[n];
        for(int i=0;i<n;i++){
            a[i]=sc.nextInt();
        }
          for(int i=0;i<n;i++){
              jal.addNode(a[i]);
          }
         jal.printList();
    }
 Node head=null;
    class Node{//定义结点
    Node next=null;
    int data;
    public Node(){
        
    }
    public Node(int data){
        this.data=data;
    }
    }
    public void printList(){
        Node tmp=head;
        while(tmp!=null){
            System.out.print(tmp.data+" ");
            tmp=tmp.next;
        }
    }
    public void addNode(int d){
        Node newNode=new Node(d);
        if(head==null){
            head=newNode;return;
        }
        Node tmp=head;
        while(tmp.next!=null){
            tmp=tmp.next;
        }tmp.next=newNode;
    } }*/
//快速排序不理解
    //19年初试
  /*  for(int i=1;i<=100;i++){
        if(i%3==0){
            System.out.println(i);
        }
        else{
            int t=i;
            while(t!=0){
            if(t%10==3){
                System.out.println(i);
            }
            t/=10;
        }
    }}}}*/
 /* Scanner sc=new Scanner(System.in);
  int a=sc.nextInt();
  int b=sc.nextInt();
  int c=a*b;
  System.out.println("最大公约数是"+gcd(a,b));
  System.out.println("最小公约数是"+c/gcd(a,b));
    }
    public static int gcd(int a,int b){
        if(b==0) return a;
        else return gcd(b,a%b);
        
    }}*/
     /* Scanner sc = new Scanner(System.in);
      String str=sc.next();
      String regex="[^0-9]";
      Pattern p = Pattern.compile(regex);
      Matcher m=p.matcher(str);
      String str2=m.replaceAll("_");
      String ch[]=str2.split("_");//将非数字的字符串变为_,再以这个割数组
      for(String b:ch){
          System.out.print(b+" ");
      }*/
    /*  Scanner sc = new Scanner(System.in);
      while(true){
          System.out.println("输入任意键开始,输入#结束");
          String c=sc.next();
          if("#".equals(c)){//输入#结束,此处可以不必写
              break;}
      }
       System.out.println("输入第一个操作数");
      double a=sc.nextDouble();
      System.out.println("输入第二个操作数");
     double b=sc.nextDouble();
     
      System.out.println("输入运算符");
      char op=sc.next().charAt(0);
    switch(op){
        case'+':System.out.println(a+b);break;
         case'-':System.out.println(a-b);break;
          case'*':System.out.println(a*b);break;
           case'/':
               if(b==0){
               System.out.println("不符合运算规则");}
                 else  System.out.println(a/b);
               break;
           default:System.out.println("运算符有误");break;
    }System.out.println("运算jieshu");
    }
}*/
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值