新手,我用的笨方法,大佬轻喷
#include<stdio.h>int main(){int n,i;//i是数组下标scanf("%d\n",&n);//输入的数存到数组里int arr[n+1];for(i=0;i<n;i++){scanf("%d",&arr[i]);}//要插入的数int m;scanf("%d",&m);//插在头 if(m<arr[0]){for(int x=n;x>0;x--){arr[x] = arr[x-1];}arr[0] = m;} //插在尾 else if(m>arr[n-1]){arr[n] = m;}//等价或在中间elsefor(i=0;i<n;i++){if(arr[i]<m && arr[i+1]>=m){for(int x=n;x>i;x--){arr[x] = arr[x-1];}arr[i+1] = m;}}//outputfor(i=0;i<n+1;i++){printf("%d ",arr[i]);}return 0;}/*n=3arr0 = 2;arr1 = 3; arr2 = 4;m=1arr3 = arr2arr2 = arr1arr1 = arr0arr0 = mi=0*//*n=4arr0 = 1; arr1 = 3; arr2 = 4;arr[3]=5m=2arr4=arr3=5arr3=arr2=4arr2=arr1=3arr1=2i=1*/
PTA实验7-1-1简化的插入排序(15分) 本题要求编写程序 将一个给定的整数插到原本有序的整数序列中 使结果序列仍然有序。