2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩21頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實驗14 數組的應用實驗要求:1.編寫一個程序,通過屏幕提示輸入 二維數組的行列個數(假設是方陣), 然后提示依次輸入各個整數 元素(一個元素一行), 然后編寫三個方法分別求數組的每行最大值、 每列最小值以及輸出數組主對角線上的元素。,P164,import java.util.Scanner;public class FangZhen { //通過屏幕提示輸

2、入二維數組的行列個數和元素 int[][] readArray() {Scanner reader = new Scanner(System.in);//輸入二維數組的行列個數(假設是方陣)System.out.println("請輸入二維數組的行列個數(假設是方陣):");int n = reader.nextInt();int[][] ary = new int[n][n];/

3、/依次輸入各個整數元素(一個元素一行)System.out.println("請依次輸入各個整數元素(一個元素一行):"); for (int i = 0; i < n; i++) {for (int j = 0; j < n; j++) {ary[i][j] = reader.nextInt();}}return ary; },//輸出每行最大值void

4、printLineMax(int[][] a) {System.out.println("每行最大值:");for (int i = 0; i max) {max = a[i][j];}}System.out.println(max + " ");}},//輸出每列最小值void printColumnMin(int[][] a) {System

5、.out.println("每列最小值:");for (int i = 0; i < a.length; i++) {int min = a[0][i];for (int j = 0; j < a[i].length; j++) {if (a[j][i] < min) {min = a[j][i];}}System.out.println(min

6、 + " ");}},//輸出每行最大值void printLineMax(int[][] a) {System.out.println("每行最大值:");for (int i = 0; i max) {max = a[i][j];}}System.out.println(max + " ");}}//輸出每列最小值v

7、oid printColumnMin(int[][] a) {System.out.println("每列最小值:");for (int i = 0; i < a.length; i++) {int min = a[0][i];for (int j = 0; j < a[i].length; j++) {if (a[j][i] < min) {min = a[j

8、][i];}}System.out.println(min + " ");}},//輸出數組主對角線上的元素void printMainDiagonal(int[][] a) {System.out.println("主對角線上的元素:");for (int i = 0; i < a.length; i++) {for (int j = 0;

9、 j < a[i].length; j++) {if (i == j) {System.out.print(a[i][j] + " ");}}}}public static void main(String[] args) {FangZhen f = new FangZhen();int[][] a = f.readArray();f.p

10、rintLineMax(a);f.printColumnMin(a);f.printMainDiagonal(a);}},實驗14 數組的應用實驗要求:2.使用數組的知識編程實現Fibonacci數列。,P164,Fibonacci數列: 1,1,2,3,5,8,13,21……,public class Fibonacci {int[] getFibonacci(int n) {

11、int[] a = new int[n];//設置前兩個元素值a[0] = 1;a[1] = 1;//求余下元素值for (int i = 2; i < n; i++) {a[i] = a[i - 1] + a[i - 2];}return a;}public static void main(String[] args) {Fibonacci fbn = ne

12、w Fibonacci();//根據需要的數列項目得到Fibonacci數列int[] f = fbn.getFibonacci(10);//輸出數列中所有元素for (int i = 0; i < f.length; i++) {System.out.print(f[i] + " ");}}},Fibonacci數列: 1,1,2,3,5,8,13,

13、21……,實驗14 數組的應用實驗要求:3.編程采用選擇排序法實現對 一維數組的元素由小到大排序并輸出。,P164,選擇排序法: 先選擇數組中最小數與第一個元素交換, 再選擇次小數與第二個元素交換, 一共進行數組長度-1次選擇。,3 選擇排序簡單選擇排序排序過程首先通過n-1次關鍵字比較,從n個記錄中找出關鍵字最小的記錄,將它與第一個記錄交換。再通過n-

14、2次比較,從剩余的n-1個記錄中找出關鍵字次小的記錄,將它與第二個記錄交換。重復上述操作,共進行n-1趟排序后,排序結束。,簡單選擇排序,例,,初始: [ 49 38 65 97 76 13 27 ],i=1,13,49,一趟: 13 [38 65 97 76 49 27 ],i=2,27,38,六趟: 13 2

15、7 38 49 65 76 [97 ],排序結束: 13 27 38 49 65 76 97,class SortArray {static int[] sort(int[] ary) {int i, j, k, temp;int n = ary.length;//一共進行長度-1次選擇for (i = 0; i

16、 < n - 1; i++) {k = i;//選擇本次最小元素值的下標for (j = i + 1; j < n; j++) {if (ary[j] < ary[k]) {k = j;}}//存放本次最小元素值if (k != i) {temp = ary[k];ary[k] = ary[i];ary[i]

17、= temp;}}//返回排序后的數組return ary;},/* 編程采用選擇排序法實現對一維數組的元素由小到大 排序并輸出。(先選擇數組中最小數與第一個元素交換, 再選擇次小數與第二個元素交換, 一共進行長度-1次選擇。) */public static void main(String[] args) {//定義待排序的數組int[] ary = { 12, 8,

18、6, 40, 9, 10 };//進行選擇排序ary = sort(ary);//輸出排序后的數組元素for (int i = 0; i < ary.length; i++) {System.out.print(ary[i] + " ");}}},純上機實踐#1. 按要求編寫Java應用程序。 編寫一個名為Test的主類,類中只有一個主方法;

19、 在主方法中定義一個大小為50的一維整型數組, 數組名為x,數組中存放著{1,3,5,…,99}, 輸出這個數組中的所有元素,每輸出十個換一行;,(三)二維數組,1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79

20、81 83 85 87 89 91 93 95 97 99,for (i=0; i<50; i++) { //i表示數組下標 x[i] = 2*i + 1; //為元素賦值 //在輸出下標分別為10、20、30、40的元素之前換行。 if (i %10 == 0) { System.out.println(); } System.out.print (

21、x[i] + “ ” ); //輸出元素},解法一,int i, cnt = 0; //cnt用來統(tǒng)計所屬出元素的個數for (i = 1; i < 100; i = i + 2) { //i表示數組元素System.out.print (i + " "); //輸出元素cnt++; //累計個數if (cnt % 10 == 0) { //夠10個就換行Sy

22、stem.out.println ();}},解法二,純上機實踐#2. 按要求編寫Java應用程序。 在主方法中定義一個大小為10*10的二維字符型數組y, 正反對角線上存的是‘*’,其余位置存的是‘#’; 輸出這個數組中的所有元素。,(三)二維數組,純上機實踐#3. 五行楊輝三角形如下所示,請編寫應用程序, 輸出20行楊輝三角形。 提示:三角形腰上的數為1,(縱

23、軸為i, 橫軸為j)。 其他位置的數為其上一行相鄰兩個數之和 a[i][j]=a[i-1][j-1]+a[i-1][j]。11 11 2 11 3 3 11 4 6 4 1 1 5 10 10 5 1,(三)二維數組,精品課件!,精品課件!,輸出20行楊輝三角形class ArrayYanghui {pu

24、blic static void main(String[] args){int i,j;int ln = 20; //設置顯示行數int b[][] =new int[ln][];//對所有元素賦值 for (i=0;i<b.length;i++){b[i]=new int[i+1];b[i][0]=1;b[i][i]=1;for (j=1;j<i;j

25、++) b[i][j]=b[i-1][j-1]+b[i-1][j];}//輸出數組中的元素for (i=0;i<b.length;i++){for (j=0;j<b[i].length;j++) { System.out.print(b[i][j]+" "); }System.out.println();

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論