編乙個程式,讓有序陣列中插入資料(函式版)

2021-08-09 01:46:24 字數 1297 閱讀 3461

問題描述

【專案1-有序陣列中插入資料(函式版)】

有乙個足夠「大」的陣列a,其中已經儲存了n個呈公升序排列的資料。呼叫函式insert(a, n, m),可以將數m插入到a中的合適位置,使其仍然保持公升序,並且返回值為陣列中有效數字的個數(即原先的n加1)。

例如,若a中資料為1 7 8 17 23 24 59 62 101,n=9,需要插入的數字m為50,呼叫函式insert(a, n, m)後,a中資料為1 7 8 17 23 24 50 59 62 101,n=10。

下面給出了呼叫函式insert的main函式,請寫出insert函式來,實現上述功能。

程式**1

#include #include #define n 100

int insert(int,int, int);

/**csdn學院--2016級

*目的:讓**見證成長(作為乙個初學的菜鳥,如

*檔名稱:myfun167.c

*完成日期:2023年10月7日

*/int main()

; int i, n=9;

int m =50;

n = insert(a, n, m); //在長度為n的a陣列中插入m,使仍保持有序

for(i=0; i=0&&(arr[i]>number))

arr[size--]=arr[i--];

arr[++i]=number;

return ++k;

}

程式**2

#include #include #define n 100

int insert(int,int,int);

int main()

; int i, n=9;

int m =50;

n = insert(a, n, m); //在長度為n的a陣列中插入m,使仍保持有序

for(i=0; i=0&&(arr[i]>n))

arr[++i]=m;

return ++n;

}

輸出結果

心得體會:

作為乙個大學二的菜鳥,開始慢慢前進,多多少少感到有收穫,由於水平有限,多多少少有錯,望包涵

重新上傳

取消

有序陣列中插入資料

問題描述 專案3 有序陣列中插入資料 定義好乙個有10個元素的陣列,先輸入9個呈公升序的數作為前9個元素,再輸入乙個數,要求按原來排序的規律將它插入陣列中。例如,9個呈公升序的數為1 7 8 17 23 24 59 62 101,需要插入的數字為50,輸出的序列則為1 7 8 17 23 24 50...

合併兩個有序數組成乙個有序陣列

題目 有兩個陣列a和b,將它們合併成陣列c,需要c也是有序陣列。有兩種實現思路 定義乙個新陣列,長度為兩個陣列長度之和,將兩個陣列都copy到新陣列,然後排序。給兩個陣列分別定義乙個下標,最大長度是陣列長度減一,按位迴圈比較兩個陣列,較小元素的放入新陣列,下標加一 注意,較大元素對應的下標不加一 直...

OJ 在有序陣列中插入資料

問題及 檔名稱 test.cpp 完成日期 2014年 12 月 04 日 版本號 v1.0 問題描述 定義好乙個有10個元素的陣列,先輸入9個呈公升序的數作為前9個元素,再輸入乙個數,要求按原來排序的規律將它插入陣列中。輸入描述 輸入前九個數,再輸入乙個需要插入的數 程式輸出 輸出排序後的新順序 ...