C语言数组排序插入算法:从小到大排序并插入新元素
#include <stdio.h>
int main() { int a[11], i, j, t, n; for (i = 0; i < 10; i++) scanf('%d', &a[i]);//输入 scanf('%d', &a[10]);//输入待插入数 for (i = 0; i < 10; i++)//冒泡排序 for (j = 0; j < 9 - i; j++) if (a[j] > a[j + 1]) t = a[j], a[j] = a[j + 1], a[j + 1] = t; for (i = 0; i < 11; i++) printf('%3d', a[i]);//输出排序后的整数 printf(' '); for (i = 0; i < 11; i++)//插入 if (a[i] > a[10])//如果插入的数比a[i]小,就把它插入到a[i]的前面 { for (j = 10; j > i; j--) a[j] = a[j - 1]; a[i] = a[10]; break;//插入完毕后退出循环 } for (i = 0; i < 11; i++) printf('%3d', a[i]);//输出插入后的整数 printf(' '); return 0; }
原文地址: https://www.cveoy.top/t/topic/nmS0 著作权归作者所有。请勿转载和采集!