Description:現(xiàn)有一個正整數數組Array,以0表示數組的結束。其中任意2個元素都不同,而且已經按照遞增序排列。另有一個整數Key>0。要將Key插入到數組Array中,并保證插入之后的數組依然保持遞增序。在插入過程中,會有以下情況出現(xiàn):
1. 數組Array已經達到其容量上界Vol,此時應返回結果-1。
2. 數組Array中已經有與Key相等的元素存在,此時應返回結果-2。
3. 如果Array既沒有滿,也沒有與Key相等的元素,則應返回Key在數組Array中插入的位置,即Key插入Array后所在的下標。
要求編寫一個函數int insert(int array[],int key,int vol)實現(xiàn)上述插入操作,其中: array[]:需插入元素所在的數組; key:待插入的元素;
vol:array數組的最大容量,即數組中最多可以容納的數值個數。
樣例中已經包含上述三種可能的情形。上述情況按照上述順序依次判斷,即先判斷Array是否已滿,再判斷Array是否已經有Key。
注意:主函數已經給出,只需提交insert函數的代碼以及必要的預處理命令。
Input:輸入分為多行。第一行是M,表示后面有M組測試數據。
每組測試數據有2行輸入。第一行是Array中的元素,不超過1000個,以數字“0”表示該行數據的結束。第二行是要插入Array中的數值Key。
Output:輸出為M行,每一行代表上述每一組輸入的插入結果。其中:如果數組已滿,則輸出:“The array if full!”
如果數組中已經有Key,則輸出:“The key is already in this array!”
如果Key可以插入Array,則輸出:“The key is inserted in position x”. 其中x是Key插入數組后的下標。
您可能感興趣的試卷
你可能感興趣的試題
執(zhí)行下面的程序后,a的值為()
A.7
B.8
C.9
D.10
兩次運行下面程序,如果從鍵盤上分別輸入6和4,則程序的輸出結果是()
A.7和5
B.6和3
C.7和4
D.6和4
以下程序中,while循環(huán)的循環(huán)次數是()。
A.1
B.10
C.6
D.死循環(huán),不能確定次數
最新試題
一個C語言程序無論長短都是有函數和變量組成。
C程序代碼中的注釋、標識符命名、空行、代碼行中的空格以及對齊等都不影響程序的可讀性。
?設fp為FILE類型的指針,要以只寫的方式打開文件d:\data\file.txt,正確的語句是()。
C語言編譯連接生成的.exe文件屬于()。
程序中出現(xiàn)的諸如0、300、20等數字稱為幻數,通常用變量或者符號常量來替代以明確其物理意義。
與k=n++完全等價的表達式是()
以下不能正確計算1×2×3×…×10的程序段是()
連字符“–”可以用于變量名時連接兩個單詞。
函數getchar()的作用是:輸出一個字符。
下面程序執(zhí)行后如果的值是85則輸出的結果是()