题解 | #有序序列插入一个数#
有序序列插入一个数
https://www.nowcoder.com/practice/68ae3b28b4a04e098485c4423e2c6548
#include <stdio.h> void sort_n(int arr[],int n) { int i=0; //n+1个数开始冒泡排序 for(i=0;i<n+1;i++) { int j=0; for(j=0;j<n-i;j++) { int tmp=0; if(arr[j]>arr[j+1]) { tmp=arr[j+1]; arr[j+1]=arr[j]; arr[j]=tmp; } } } } int main() { int i=0; int n=0; int in_num=0; int arr[51]={0}; //输入一个整数 scanf("%d",&n); //输入N个升序排列的整数,输入用空格分隔的N个整数 for(i=0;i<n;i++) { scanf("%d ",&arr[i]); } //输入想要进行插入的一个整数,并把要插入的数据放在数组第i+1的位置上 scanf("%d",&in_num); arr[i]=in_num; //冒泡排序这个前n+1个数据 sort_n(arr,n); //输出 for(i=0;i<n+1;i++) { printf("%d ",arr[i]); } printf("\n"); return 0; }