1. 程式人生 > 其它 >高階語言程式設計實驗4-4

高階語言程式設計實驗4-4

題目描述

對於整型陣列a[10]和b[10],編制程式完成下列任務:

(1)由使用者從鍵盤為兩個陣列輸入值;

(2)求出兩個陣列的最大值和最小值;

(3)把陣列a和b中的整數分別從小到大和從大到小排序;

(4)把兩個有序的陣列a和b組成一個長度為20的有序陣列c[20],使陣列c的順序為從小到大。

輸入

輸入兩行整數,每行10個,第一行是陣列a裡的陣列,第二行是陣列b裡的數值;

輸出

輸出五行,第一行有兩個整數,分別是陣列a的最大值和最小值,兩個整數之間用一個空格分隔;第二行有兩個整數,分別是陣列b的最大值和最小值,兩個整數之間用一個空格分隔;第三行按照從小到大的順序輸出陣列a裡的數值,每個數字後面有一個空格,最後一個數字後面也有空格;第四行按照從大到小的順序輸出陣列b裡的數值,每個數字後面有一個空格,最後一個數字後面也有空格;第五行按照從小到大的順序輸出合併後陣列c裡的數值,每個數字後面有一個空格,最後一個數字後面也有空格。

樣例輸入Copy

2 5 9 1 3 4 0 6 7 8
10 5 25 9 6 3 7 1 2 13 

樣例輸出Copy

9 0 
25 1 
0 1 2 3 4 5 6 7 8 9 
25 13 10 9 7 6 5 3 2 1
0 1 1 2 2 3 3 4 5 5 6 6 7 7 8 9 9 10 13 25  
 1 #include <iostream>
 2 using namespace std;
 3 int max(int a[])
 4 {
 5     int i,max;
 6     max = a[0];
 7     for (i = 1
; i < 10; i++) 8 if (a[i] > max) 9 max = a[i]; 10 return max; 11 } 12 int min(int a[]) 13 { 14 int i, min; 15 min = a[0]; 16 for (i = 1; i < 10; i++) 17 if (a[i] < min) 18 min = a[i]; 19 return min; 20 } 21 void mintomax(int a[]) 22
{ 23 for (int i = 0; i < 9; i++) 24 { 25 for (int j = 0; j < 9; j++) 26 { 27 if (a[j] > a[j + 1]) 28 { 29 int temp = a[j]; 30 a[j] = a[j + 1]; 31 a[j + 1] = temp; 32 } 33 } 34 } 35 for (int i = 0; i < 10; i++) 36 cout << a[i] << ' '; 37 } 38 void maxtomin(int a[]) 39 { 40 for (int i = 0; i < 9; i++) 41 { 42 for (int j = 0; j < 9; j++) 43 { 44 if (a[j] < a[j + 1]) 45 { 46 int temp = a[j]; 47 a[j] = a[j + 1]; 48 a[j + 1] = temp; 49 } 50 } 51 } 52 for (int i = 0; i < 10; i++) 53 cout << a[i] << ' '; 54 } 55 void add(int a[],int b[]) 56 { 57 int i; 58 int c[20]; 59 for (i = 0; i < 10; i++) 60 c[i] = a[i]; 61 for (i = 10; i < 20; i++) 62 c[i] = b[i - 10]; 63 for (i = 0; i < 19; i++) 64 { 65 for (int j = 0; j < 19; j++) 66 { 67 if (c[j] > c[j + 1]) 68 { 69 int temp = c[j]; 70 c[j] = c[j + 1]; 71 c[j + 1] = temp; 72 } 73 } 74 } 75 for (i = 0; i < 20; i++) 76 cout << c[i] << ' '; 77 } 78 int main() 79 { 80 int i; 81 int a[10], b[10]; 82 for (i = 0; i < 10; i++) 83 cin >> a[i]; 84 for (i = 0; i < 10; i++) 85 cin >> b[i]; 86 cout << max(a) << ' ' << min(a)<<endl; 87 cout << max(b) << ' ' << min(b) << endl; 88 mintomax(a); cout << endl; 89 maxtomin(b); cout << endl; 90 add(a, b); 91 return 0; 92 }