• <sub id="h4knl"><ol id="h4knl"></ol></sub>
    <sup id="h4knl"></sup>
      <sub id="h4knl"></sub>

      <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
      1. <strong id="h4knl"></strong>

      2. java模擬試題

        時間:2024-06-20 10:48:27 SUN認證 我要投稿

        2017年java模擬試題

          Java引進虛擬機 原理,并運行于虛擬機,實現不同平臺的Java接口之間。使用Java編寫的程序能在世界范圍內共享。下面是小編收集的關于java模擬試題,希望大家認真閱讀!

        2017年java模擬試題

          1. 代碼填空(滿分3分)

          以下程序打印出0~9的數字,請補充缺少的代碼。

          public class MyTest

          {

          public static void f(int begin, int end)

          { if(begin>end) return;

          System.out.println(begin);

          f(begin+1, end);

          }

          public static void main(String[] args)

          {

          f(0,9);

          }

          }

          2. 代碼填空(滿分4分)

          如果要把兩個整型變量a、b的值交換,一般要采用一個中間變量做過渡,但也可以在不借助任何其它變量的情況下完成。試填寫缺失的代碼。

          a = a ^ b;

          b = ___a ^ b______;

          a = ___a ^ b______;

          3. 代碼填空(滿分3分)

          許多人都曾經玩過“拍七”游戲。規則是:大家依次從1開始順序數數,數到含有7或7的倍數的要拍手或其它規定的方式表示越過(比如:7,14,17等都不能數出),下一人繼續數下面的數字。違反規則者受罰。下面的程序模擬這個過程,拍7的情況輸出“*”,請完善之。

          for(int i=1; i<100; i++)

          {

          if(i % 7 == 0)

          printf("*/n");

          else if(____i/10==7||i%10==7_______________)

          printf("*/n");

          else

          printf("%d/n", i);

          }

          4. 代碼填空(滿分5分)

          下面的靜態方法的目的是求出某個日期是該年度的第幾天。試完善之。

          如果傳入:year=1980,month=1, day=1

          則返回 1

          如果傳入:year=1980,month=2, day=1

          則返回 32

          public static int getDayOfYear(int year, int month, int day)

          {

          int [][]days=____new int[][]{{0,31,29,31,30,31,30,31,31,30,31,30,31},{0,31,28,31,30,31,30,31,31,30,31,30,31}}_________________;

          int flag =(year%4==0 && year%100!=0) || year%400 == 0 ? 1 : 0;

          int sum = day ;

          for(int i=0;i

          sum += days[flag][i];

          }

          return sum;

          }

          5. 代碼填空(滿分2分)

          下列方法的目的是,找出1~n之間所有的平方數。試補全缺失的代碼。

          當n=10時,輸出結果是:

          1 4 9

          當n=100時,輸出結果是:

          1 4 9 16 25 36 49 64 81

          public static void showSqure(int n)

          {

          for(int i=0; i

          {

          for(int j=1; j<=i; j++)

          {

          if(i==___j*j__________) System.out.print(i + " ");

          }

          }.

          System.out.println();

          }

          6. 代碼填空(滿分9分)

          (a+b)的n次冪的展開式中各項的系數很有規律,對于n=2,3,4時分別是:1 2 1, 1 3 3 1,1 4 6 4 1。這些系數構成了著名的楊輝三角形:

          1

          1 1

          1 2 1

          1 3 3 1

          1 4 6 4 1

          1 5 10 10 5 1

          下列的程序給出了計算第m層的第n個系數的計算方法,試完善之(m,n都從0算起)。

          public static int f(int m, int n)

          {

          if(m==0) return 1;

          if(n==0 || n==m) return 1;

          return f(m-1, n-1)+f(m-1, n);

          }

          7. 代碼填空(滿分4分)

          下面的代碼將數組中的元素的位置顛倒過來:

          比如:原來的元素是 [1,2,3]

          則顛倒后變為:[3,2,1]

          public static void reverse(int[] arrs)

          {

          for (int i = 0, j = arrs.length - 1; i <____j_____ ; i++, j--)

          {

          int temp = arrs[i];

          arrs[i] = arrs[j];

          arrs[j] = temp;

          }

          }

          8. 程序設計(滿分15分)

          從鍵盤輸入一個整數(1~20)

          則以該數字為矩陣的大小,把1,2,3…n*n 的數字按照順時針螺旋的形式填入其中。例如:

          輸入數字2,則程序輸出:

          1 2

          4 3

          輸入數字3,則程序輸出:

          1 2 3

          8 9 4

          7 6 5

          輸入數字4, 則程序輸出:

          1 2 3 4

          12 13 14 5

          11 16 15 6

          10 9 8 7

          import java.util.Scanner;

          public class Test8 {

          public static void main(String[] args) {

          int num = 1;

          int cirCle[][] = new int[20][20];

          int inputNum;

          int i, j, line, t;

          System.out.println("請輸入一個正整數");

          Scanner in = new Scanner(System.in);

          inputNum = in.nextInt();

          line = inputNum;

          for (t = 0; t < line; t++) {

          for (i = t, j = t; j < inputNum - t; j++) {

          cirCle[i][j] = num;

          num++;

          }

          for (j = j - 1, i = i + 1; i < inputNum - t; i++) {

          cirCle[i][j] = num;

          num++;

          }

          for (j = j - 1, i = i - 1; j >= t; j--) {

          cirCle[i][j] = num;

          num++;

          }

          for (j = j + 1, i = i - 1; i > t; i--) {

          cirCle[i][j] = num;

          num++;

          }

          }

          for (int m = 0; m < line; m++) {

          for (int n = 0; n < line; n++) {

          System.out.print(cirCle[m][n] + " ");

          }

          System.out.println();

          }

          }

          }

          9. 程序設計(滿分9分)

          從鍵盤輸入一個日期,格式為yyyy-M-d

          要求計算該日期與1949年10月1日距離多少天

          例如:

          用戶輸入了:1949-10-2

          程序輸出:1

          用戶輸入了:1949-11-1

          程序輸出:31

          import java.text.ParseException;

          import java.text.SimpleDateFormat;

          import java.util.Date;

          import java.util.Scanner;

          public class Test {

          public static void main(String[] args) {

          SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");

          Date d = new Date();

          String d1 = "1949-10-1";

          Date a = new Date();

          System.out.println("請輸入一個日期以(YYYY-MM-DD)格式輸入:");

          Scanner sc = new Scanner(System.in);

          String s = sc.nextLine();

          try {

          d = sf.parse(d1);

          a = sf.parse(s);

          } catch (ParseException e1) {

          e1.printStackTrace();

          }

          long x = a.getTime() - d.getTime();

          System.out.println(x / 1000 / (24 * 60 * 60));

          }

          }

          10. 程序設計(滿分20分)

          任意一個5位數,比如:34256,把它的各位數字打亂,重新排列,可以得到一個最大的數:65432,一個最小的數23456。求這兩個數字的差,得:41976,把這個數字再次重復上述過程(如果不足5位,則前邊補0)。如此往復,數字會落入某個循環圈(稱為數字黑洞)。

          比如,剛才的數字會落入:[82962, 75933, 63954, 61974] 這個循環圈。

          請編寫程序,找到5位數所有可能的循環圈,并輸出,每個循環圈占1行。其中5位數全都相同則循環圈為 [0],這個可以不考慮。循環圈的輸出格式仿照:

          [82962, 75933, 63954, 61974]

          其中數字的先后順序可以不考慮。

          import java.util.Arrays;

          public class MyTest {

          public static void main(String args[]) {

          int f = Sort(array(34256));

          int x = Sort(array(34256));

          for (int i = 0; i < 4; i++) {

          x = Sort(array(x));

          System.out.print(x + " ");

          }

          }

          static int[] array(int n) {

          int a[] = new int[5];

          int i = 0;

          int m = n;

          while (i < 5) {

          a[i] = m % 10;

          if (m % 10 == 0)

          a[i] = 0;

          m /= 10;

          i++;

          }

          return a;

          }

          static int Sort(int a[]) {

          Arrays.sort(a);

          String min = "";

          for (int i = 0; i < 5; i++) {

          min = min + String.valueOf(a[i]);

          }

          int Min = Integer.parseInt(min);

          StringBuffer sb = new StringBuffer(min).reverse();

          String max = new StringBuffer(sb).toString();

          int Max = Integer.parseInt(max);

          int c = Max - Min;

          return c;

          }

          }

        《&.doc》
        将本文的Word文档下载到电脑,方便收藏和打印
        推荐度:
        点击下载文档

        【java模擬試題】相關文章:

        Java考試格林模擬試題03-23

        sun認證java基礎模擬試題03-30

        2017年java考試模擬試題03-06

        NIIT認證Java基礎全真模擬試題03-08

        java考試試題及答案10-25

        java基礎筆試題及答案03-03

        經典的Java基礎面試題03-07

        CorelDRAW認證模擬試題01-23

        Adobe Photoshop模擬試題03-10

        在线咨询
        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码
      3. <sub id="h4knl"><ol id="h4knl"></ol></sub>
        <sup id="h4knl"></sup>
          <sub id="h4knl"></sub>

          <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
          1. <strong id="h4knl"></strong>

          2. 午夜理论片福利在线观看 | 亚洲欧洲日本综合aⅴ在线 久夜色精品国产噜噜 | 亚洲制服丝袜一区二区三区 | 先锋影音资源国产性爱教学 | 亚洲日本中文字幕区第5页 中文字幕无吗热视频 | 日本免费高清中文网 |

            2017年java模擬試題

              Java引進虛擬機 原理,并運行于虛擬機,實現不同平臺的Java接口之間。使用Java編寫的程序能在世界范圍內共享。下面是小編收集的關于java模擬試題,希望大家認真閱讀!

            2017年java模擬試題

              1. 代碼填空(滿分3分)

              以下程序打印出0~9的數字,請補充缺少的代碼。

              public class MyTest

              {

              public static void f(int begin, int end)

              { if(begin>end) return;

              System.out.println(begin);

              f(begin+1, end);

              }

              public static void main(String[] args)

              {

              f(0,9);

              }

              }

              2. 代碼填空(滿分4分)

              如果要把兩個整型變量a、b的值交換,一般要采用一個中間變量做過渡,但也可以在不借助任何其它變量的情況下完成。試填寫缺失的代碼。

              a = a ^ b;

              b = ___a ^ b______;

              a = ___a ^ b______;

              3. 代碼填空(滿分3分)

              許多人都曾經玩過“拍七”游戲。規則是:大家依次從1開始順序數數,數到含有7或7的倍數的要拍手或其它規定的方式表示越過(比如:7,14,17等都不能數出),下一人繼續數下面的數字。違反規則者受罰。下面的程序模擬這個過程,拍7的情況輸出“*”,請完善之。

              for(int i=1; i<100; i++)

              {

              if(i % 7 == 0)

              printf("*/n");

              else if(____i/10==7||i%10==7_______________)

              printf("*/n");

              else

              printf("%d/n", i);

              }

              4. 代碼填空(滿分5分)

              下面的靜態方法的目的是求出某個日期是該年度的第幾天。試完善之。

              如果傳入:year=1980,month=1, day=1

              則返回 1

              如果傳入:year=1980,month=2, day=1

              則返回 32

              public static int getDayOfYear(int year, int month, int day)

              {

              int [][]days=____new int[][]{{0,31,29,31,30,31,30,31,31,30,31,30,31},{0,31,28,31,30,31,30,31,31,30,31,30,31}}_________________;

              int flag =(year%4==0 && year%100!=0) || year%400 == 0 ? 1 : 0;

              int sum = day ;

              for(int i=0;i

              sum += days[flag][i];

              }

              return sum;

              }

              5. 代碼填空(滿分2分)

              下列方法的目的是,找出1~n之間所有的平方數。試補全缺失的代碼。

              當n=10時,輸出結果是:

              1 4 9

              當n=100時,輸出結果是:

              1 4 9 16 25 36 49 64 81

              public static void showSqure(int n)

              {

              for(int i=0; i

              {

              for(int j=1; j<=i; j++)

              {

              if(i==___j*j__________) System.out.print(i + " ");

              }

              }.

              System.out.println();

              }

              6. 代碼填空(滿分9分)

              (a+b)的n次冪的展開式中各項的系數很有規律,對于n=2,3,4時分別是:1 2 1, 1 3 3 1,1 4 6 4 1。這些系數構成了著名的楊輝三角形:

              1

              1 1

              1 2 1

              1 3 3 1

              1 4 6 4 1

              1 5 10 10 5 1

              下列的程序給出了計算第m層的第n個系數的計算方法,試完善之(m,n都從0算起)。

              public static int f(int m, int n)

              {

              if(m==0) return 1;

              if(n==0 || n==m) return 1;

              return f(m-1, n-1)+f(m-1, n);

              }

              7. 代碼填空(滿分4分)

              下面的代碼將數組中的元素的位置顛倒過來:

              比如:原來的元素是 [1,2,3]

              則顛倒后變為:[3,2,1]

              public static void reverse(int[] arrs)

              {

              for (int i = 0, j = arrs.length - 1; i <____j_____ ; i++, j--)

              {

              int temp = arrs[i];

              arrs[i] = arrs[j];

              arrs[j] = temp;

              }

              }

              8. 程序設計(滿分15分)

              從鍵盤輸入一個整數(1~20)

              則以該數字為矩陣的大小,把1,2,3…n*n 的數字按照順時針螺旋的形式填入其中。例如:

              輸入數字2,則程序輸出:

              1 2

              4 3

              輸入數字3,則程序輸出:

              1 2 3

              8 9 4

              7 6 5

              輸入數字4, 則程序輸出:

              1 2 3 4

              12 13 14 5

              11 16 15 6

              10 9 8 7

              import java.util.Scanner;

              public class Test8 {

              public static void main(String[] args) {

              int num = 1;

              int cirCle[][] = new int[20][20];

              int inputNum;

              int i, j, line, t;

              System.out.println("請輸入一個正整數");

              Scanner in = new Scanner(System.in);

              inputNum = in.nextInt();

              line = inputNum;

              for (t = 0; t < line; t++) {

              for (i = t, j = t; j < inputNum - t; j++) {

              cirCle[i][j] = num;

              num++;

              }

              for (j = j - 1, i = i + 1; i < inputNum - t; i++) {

              cirCle[i][j] = num;

              num++;

              }

              for (j = j - 1, i = i - 1; j >= t; j--) {

              cirCle[i][j] = num;

              num++;

              }

              for (j = j + 1, i = i - 1; i > t; i--) {

              cirCle[i][j] = num;

              num++;

              }

              }

              for (int m = 0; m < line; m++) {

              for (int n = 0; n < line; n++) {

              System.out.print(cirCle[m][n] + " ");

              }

              System.out.println();

              }

              }

              }

              9. 程序設計(滿分9分)

              從鍵盤輸入一個日期,格式為yyyy-M-d

              要求計算該日期與1949年10月1日距離多少天

              例如:

              用戶輸入了:1949-10-2

              程序輸出:1

              用戶輸入了:1949-11-1

              程序輸出:31

              import java.text.ParseException;

              import java.text.SimpleDateFormat;

              import java.util.Date;

              import java.util.Scanner;

              public class Test {

              public static void main(String[] args) {

              SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");

              Date d = new Date();

              String d1 = "1949-10-1";

              Date a = new Date();

              System.out.println("請輸入一個日期以(YYYY-MM-DD)格式輸入:");

              Scanner sc = new Scanner(System.in);

              String s = sc.nextLine();

              try {

              d = sf.parse(d1);

              a = sf.parse(s);

              } catch (ParseException e1) {

              e1.printStackTrace();

              }

              long x = a.getTime() - d.getTime();

              System.out.println(x / 1000 / (24 * 60 * 60));

              }

              }

              10. 程序設計(滿分20分)

              任意一個5位數,比如:34256,把它的各位數字打亂,重新排列,可以得到一個最大的數:65432,一個最小的數23456。求這兩個數字的差,得:41976,把這個數字再次重復上述過程(如果不足5位,則前邊補0)。如此往復,數字會落入某個循環圈(稱為數字黑洞)。

              比如,剛才的數字會落入:[82962, 75933, 63954, 61974] 這個循環圈。

              請編寫程序,找到5位數所有可能的循環圈,并輸出,每個循環圈占1行。其中5位數全都相同則循環圈為 [0],這個可以不考慮。循環圈的輸出格式仿照:

              [82962, 75933, 63954, 61974]

              其中數字的先后順序可以不考慮。

              import java.util.Arrays;

              public class MyTest {

              public static void main(String args[]) {

              int f = Sort(array(34256));

              int x = Sort(array(34256));

              for (int i = 0; i < 4; i++) {

              x = Sort(array(x));

              System.out.print(x + " ");

              }

              }

              static int[] array(int n) {

              int a[] = new int[5];

              int i = 0;

              int m = n;

              while (i < 5) {

              a[i] = m % 10;

              if (m % 10 == 0)

              a[i] = 0;

              m /= 10;

              i++;

              }

              return a;

              }

              static int Sort(int a[]) {

              Arrays.sort(a);

              String min = "";

              for (int i = 0; i < 5; i++) {

              min = min + String.valueOf(a[i]);

              }

              int Min = Integer.parseInt(min);

              StringBuffer sb = new StringBuffer(min).reverse();

              String max = new StringBuffer(sb).toString();

              int Max = Integer.parseInt(max);

              int c = Max - Min;

              return c;

              }

              }