高階語言程式設計實驗4-4
阿新 • • 發佈:2021-11-28
題目描述
對於整型陣列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 }