靜態陣列模擬插入並排序

2021-06-28 03:33:38 字數 1102 閱讀 3312

題目要求:

已知陣列a中的元素已按由小到大順序排列,

程式設計實現將輸入的乙個數插入陣列a中,

插入後,陣列a中的元素仍然由小到大順序排列。

思路:陣列a

0 1 2 3 4 5 6

陣列賦值

1 2 3 4 5 6 0

插入71 2 3 4 5 6 7 

插入41 2 3 5 6 0 0

原始碼如下:

/*

7、已知陣列a中的元素已按由小到大順序排列,

程式設計實現將輸入的乙個數插入陣列a中,

插入後,陣列a中的元素仍然由小到大順序排列。

*/#include#include#include#define ok 1;

#define error 0;

int len;

typedef int status;

status insert(int *p,int val)

else //處於中間

} } }

//插入操作

if(mark==-2)//比所有值都大

else

p[0]=val;

} else //處於中間

p[mark+1]=val;

} } for(i=0;i<10;i++)

printf("%d\t",p[i]);

printf("\n插入成功!\n");

return ok;

}int main()

; int b,i=0;//b儲存要插入的資料,i作為迴圈變數

len=sizeof(a)/4; //求陣列長度

printf("請輸入要插入的整型資料:\n");

scanf("%d",&b);

insert(a,b);

return 0;

}

截圖一:

截圖二:

shell陣列排序和插入數字並排序

shell陣列插入數字並排序 vim shengxu.sh bin bash for i 1 i 5 i do read p 請輸入第 i個數字 num abc i 1 num done for a 0 a a do for k a 1 k k do if gt then aaa abc a abc...

插入排序 歸併排序

插入排序 define len 5 int a len void insertion sort void int i,j,k for j 1 j len j k a j i j 1 while i 0 a i k a i 1 a i i a i 1 k 歸併排序 int a 8 void merge...

插入排序 歸併排序

演算法導論初涉,第一講練習內容 include define n 6 int a n void init 初始化陣列 a i 1 k void output int a,int n void merge int low,int mid,int high while s mid b i a s whi...