描述
给出若干个数,将数字储存在数组中,然后使用插入排序,按照升序排列输出数字
输入一个整数n表示n个数,接着输入这n个数。
按照升序输出这个数。
输入输出示例:
输入样例
5
3 2 4 5 4
输出样例
2 3 4 4 5
参考程序
#includeint main() { int i,n,x; scanf("%d",&n); int a[100];//在有序数组中存储100个int型的数据。 for (i=0;i temp&&j>=0)//将要排序的数与前面的每一个数进行比较,若将要插入的数较小将其向前面移动; { a[j+1]=a[j]; j--; } a[++j] =temp;//将temp插入 } for (i=0;i 解题思路:
根据题目描述所说,要首先输入一个整数n表示个数,因此运用数组的方法来进行运算。在这假设其为100;
因此定义一个储存了100个int型的数据的数组,且给到其地址,以用于输入;
定义一个临时的中转变量temp,是为了方便题中定义的i与j数据的转变;
中间将要排序的数与前面的每一个数进行比较,若将要插入的数较小将其向前面移动;
因为有数组有不确定n个数据,因此通过插入排序的基本方法并完成插入 *** 作,最后通过循环语句把该数据输出。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)