c语言 在已排序的数组中插入一个数,仍保持排序状态
源程序:
#include <stdio.h>
void main()
{
int a[11]={12,21,27,30,35,44,56,60,68,70};
int i,j,data;
printf("请输入要插入到数组中的整数:\n");
scanf("%d",&data);
if(data<=a[0])
{
for(j=9;j>=0;j--)
a[j+1]=a[j];
a[0]=data;
}
else if(data>=a[9])
a[10]=data;
else
{
for(i=0;i<=9;i++)
if(data>a[i] && data<=a[i+1])
{
for(j=9;j>=i+1;j--)
a[j+1]=a[j];
a[i+1]=data;
}
}
printf("插入后的数组元素为:\n");
for(i=0;i<=10;i++)
printf("%4d",a[i]);
}
运行结果:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通