題目要求:
已知陣列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...