C语言 | 直接插入排序

解题思路:直接插入排序是一种最简单的排序方法,其基本操作是将一条记录插入到已排好的有序表中,从而得到一个新的、记录数量增1的有序表。

C语言源代码演示:

#include//头文件 
int main()//主函数 
{void insort(int post[],int n);//函数声明 int array[11],i;//定义整型变量和数组 printf("请输入10个数据:\n");//提示语句 for(i=1;i<=10;i  ){scanf("%d",&array[i]);//循环输入10个数 }printf("原始顺序:\n");//提示语句 for(i=1;i<11;i  ){printf("]",array[i]);//输出原来的 }insort(array,10);//调用排序函数 printf("\n插入数据排序后排序:\n");//提示语句 for(i=1;i<11;i  ){printf("]",array[i]);//输出排序后的结果 }printf("\n"); //换行return 0;//函数返回值为0 
}
void insort(int post[],int n)
{int i,j;for(i=2;i<=n;i  ) //数组下标从2开始,是[0]做监视哨,s[1]一个数据无可比性{post[0]=post[i]; //给监视哨赋值j=i-1; //确定要比较元素的最右边位置while(post[0]<post[j]){post[j 1]=post[j]; //数据右移j--; //移向左边一个未比较的数} post[j 1]=post[0]; //在确定的位置插入s[i]}
}

编译运行结果:

请输入10个数据:
9 8 7 1 4 5 0 3 2 99
原始顺序:9    8    7    1    4    5    0    3    2   99
插入数据排序后排序:0    1    2    3    4    5    7    8    9   99--------------------------------
Process exited after 14.48 seconds with return value 0
请按任意键继续. . .

声明:

本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/338906.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql+after+commit_Spring事务aftercommit原理及实践

来道题CREATE TABLE goods (id bigint(20) NOT NULL AUTO_INCREMENT,good_id varchar(20) DEFAULT NULL,num int(11) DEFAULT NULL,PRIMARY KEY (id),KEY goods_good_id_index (good_id)) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_0900_ai_ciClass.forName("c…

序列化和反序列化的概念_序列化的概念

序列化和反序列化的概念讨论了为什么Optional不可序列化以及如何处理&#xff08;即将推出&#xff09;之后&#xff0c;让我们仔细看看序列化。 总览 这篇文章介绍了序列化的一些关键概念。 它尝试精简地执行此操作&#xff0c;而不会涉及太多细节&#xff0c;包括将建议降至…

python自动解析json_Python语言解析JSON详解

本文主要向大家介绍了Python语言解析JSON详解&#xff0c;通过具体的内容向大家展示&#xff0c;希望对大家学习Python语言有所帮助。 JSON 函数使用 JSON 函数需要导入 json 库&#xff1a;import json。函数 描述json.dumps 将 Python 对象编码成 JSON 字符串json.loads 将已…

C语言必学的12个排序算法:基数排序

# 基本思想基数排序(radix sort)&#xff0c;同样时一种非比较的内部排序算法&#xff0c;主要基于多关键字排序的思想进行排序&#xff0c;它将单个关键字按照基数分成“多个关键字”进行排序。例如整数789是一个关键字&#xff0c;可以按照十进制位划分多关键字&#xff08;十…

有没有code能改xml内容_Spring源码解析-applicationContext.xml加载和bean的注册

applicationContext文件加载和bean注册流程​ Spring对于从事Java开发的boy来说&#xff0c;再熟悉不过了&#xff0c;对于我们这个牛逼的框架的介绍就不在这里复述了&#xff0c;Spring这个大杂烩&#xff0c;怎么去使用怎么去配置&#xff0c;各种百度谷歌都能查到很多大牛教…

C语言数据类型转换

首先变量的数据类型是可以转换的。转换的方法有两种&#xff0c;一种是自动转换&#xff0c;另一种是强制转换。自动转换即当不同类型的数据进行混合运算时&#xff0c;编译系统将按照一定的规则自动完成。而强制类型转换是由程序员通过编程强制转换数据的类型。自动转换的规则…

jdk 9和jdk8_JDK 9 –给圣诞老人的信?

jdk 9和jdk8众所周知&#xff0c;冬天&#xff08;尤其是圣诞节前的时间&#xff09;是做梦的合适时机&#xff0c;希望有一个梦想似乎可以触及的时刻。 当孩子们和大人在纸上或在他们对圣诞老人的虚构或真实信件中写下自己的梦想时&#xff0c;希望他们的梦想将成为现实。 这很…

java 类持久化_Java 持久化之 -- IO 全面整理(看了绝不后悔)

目录&#xff1a;一、java io 概述什么是IO&#xff1f;IO包括输入流和输出流&#xff0c;输入流指的是将数据以字符或者字节形式读取到内存 分为字符输入流和字符输入流输入流指的是从内存读取到外界 &#xff0c;分为字符输入流和字节输出流Java IO即Java 输入输出系统。不管…

idea 找不到或无法加载主类_解决IDEA中Groovy项目no Groovy library is defined的问题

实验环境IDEA2019.1.2Groovy-2.5.8错误重现新建了一个Groovy工程&#xff0c;指定了groovy版本&#xff0c;如图新建了一个简单的Groovy Class&#xff0c;运行&#xff0c;出现如下错误错误的尝试(以下是试错过程&#xff0c;并不能解决问题&#xff0c;读者可以不要跟着操作&…

C语言标识符、关键字和注释

这一节主要讲解C语言中的几个基本概念。标识符定义变量时&#xff0c;我们使用了诸如“a”“abc”“mn123”这样的名字&#xff0c;它们都是程序员自己起的&#xff0c;一般能够表达出变量的作用&#xff0c;这叫做标识符&#xff08;Identifier&#xff09;。标识符就是程序员…

java与java ee_Java EE 8怎么了?

java与java eeJava EE 8的工作进展顺利。 是时候赶上了&#xff01; 无需费力就可以潜入… 不要忘记Java EE 7….. 围绕三个重要主题 HTML 5对齐–用于WebSocket的Java API&#xff08;JSR 356&#xff09;&#xff0c;JSON处理&#xff08;JSR 353&#xff09;&#xff0c;JA…

java 类.class_面试官:Java反射是什么?我回答不上来!

一.概念反射就是把Java的各种成分映射成相应的Java类。Class类的构造方法是private&#xff0c;由JVM创建。反射是java语言的一个特性&#xff0c;它允程序在运行时(注意不是编译的时候)来进行自我检查并且对内部的成员进行操作。例如它允许一个java的类获取他所有的成员变量和…

巧解C语言运算符的优先级和结合性

本篇文章我们从一个例子入手讲解&#xff0c;请看下面的代码&#xff1a;#include int main(){ int a 16, b 4, c 2; int d a b * c; int e a / b * c; printf( "d%d, e%d\n", d, e); return 0; }运行结果&#xff1a;d24, e81) 对于表达式a b * c&#xff0…

jms mdb_MDB!= JMS,反之亦然

jms mdb基本 消息驱动Bean&#xff08;又称为MDB&#xff09;只是另一个EJB&#xff0c;例如无状态&#xff0c;有状态或单例。 使用MessageDriven批注指定。 MDB用于异步消息处理 它们与无状态EJB 相似 &#xff0c;因为它们都是由EJB容器池化的 但是&#xff0c;它们与无状…

java interestops_Java Channel.setInterestOps方法代码示例

import org.jboss.netty.channel.Channel; //导入方法依赖的package包/类protected void doConnect() throws Throwable {long start System.currentTimeMillis();ChannelFuture future bootstrap.connect(getConnectAddress());try{boolean ret future.awaitUninterruptibl…

python时间间隔循环_python循环间隔

广告关闭回望2020&#xff0c;你在技术之路上&#xff0c;有什么收获和成长么&#xff1f;对于未来&#xff0c;你有什么期待么&#xff1f;云社区年度征文&#xff0c;各种定制好礼等你&#xff01;序言如图1.1中关于如何用python去计算两个时间(年月日)相隔多少天&#xff0c…

C语言中的三目运算符是啥?有何用处?

一般来说&#xff0c;C语言中的三目运算符为a?b:c即有三个参与运算的量。由条件运算符组成条件表达式的一般形式为&#xff1a;表达式1? 表达式2&#xff1a;表达式3求值规则为&#xff1a;如果表达式1的值为真&#xff0c;则以表达式2 的值作为条件表达式的值&#xff0c;否…

status_code想要得到302却得到200_中考200天倒计时!教你高效规划!抓紧抢报预留座位!...

教育点击右上方蓝字关注金石教育金石教育青岛站推送青岛教育资讯&#xff0c;关注孩子成长关注教育主讲人——段莲1、金石教育首席学习规划师&#xff1a;在中考规划行业&#xff0c;段莲老师已经深入研究多年&#xff0c;了解最新的中考数据&#xff0c;并且能够把握住每个数据…

gui jfr_Java飞行记录器(JFR)

gui jfrJFR是一个Java分析器&#xff0c;它使您可以研究代码的运行时特征。 通常&#xff0c;您将使用探查器来确定代码的哪些部分导致大量内存分配或导致消耗过多的CPU。 有很多产品在那里。 过去&#xff0c;我使用过YourKit&#xff0c;OptimizeIt&#xff0c;JProfiler&am…

java 命名内部类_如何把java SWT程序中的匿名内部类改写成命名内部类?

展开全部//请看最后一个e69da5e6ba9062616964757a686964616f31333363386134private class ,其实命名内部类跟普通的java程序一样写&#xff0c;只要知道你自己的监听器要继承于哪个类&#xff0c;实现什么方法public class Level4Class extends ViewPart {private TableViewer …