求大神帮忙做一下 感谢感谢

 

代码如下,如有帮助,请采纳一下,谢谢。

#include <stdio.h>
//size是数组的元素个数,这个参数必须要有
void order(int a[],int size)
{
	int i,j;
	int tmp;
	for (i = 0; i < size -1; i++)
	{
		for (j = 0; j < size -1-i;j++)
		{
			if (a[j] > a[j+1])
			{
				tmp = a[j];
				a[j] = a[j+1];
				a[j+1] = tmp;
			}
		}
	}
}
//size是数组中元素的实际个数,n是要插入的数据
void insert(int a[],int size,int n)
{
	int i,j;
	for (i = 0; i < size; i++)
	{
		if (a[i] > n)
		{
			for(j = size;j>i;j--)
				a[j] = a[j-1];
			a[i] = n;
			break;
		}
	}
}

int main()
{
	int size;  //数组中实际元素个数
	int i;
	int n;  //要插入的数
	int arr[100] = {0};
	printf("请输入数组中元素的个数:");
	scanf("%d",&size);
	for (i = 0; i < size;i++)
	{
		scanf("%d",&arr[i]);
	}
	order(arr,size);
	printf("排序后数组:");
	for(i = 0; i < size; i++)
		printf("%d ",arr[i]);
	printf("\n请输入要插入的数:");
	scanf("%d",&n);
	insert(arr,size,n);
	printf("插入后数组:");
	for(i = 0; i < size+1; i++)
		printf("%d ",arr[i]);
	return 0;
}