c语言函数调用排序用插入法,C语言:编写查找和排序函数(二分查找,冒泡排序,选择排序法,插入排序)...

任务代码:

二分查找数组的一个数字:(函数法)

#include int binarySearch(int a[],int len,int key)

{

int low=0,high=len-1,mid;

int i=-1;//相当于index

while(low<=high)

{

mid=(low+high)/2;

if(a[mid]==key)

{

i=mid;

break;

}

else if(key>a[mid])

{

low=mid+1;

}

else

{

high=mid-1;

}

}

return i;

}

int main()

{

int array[10]={0,1,2,3,4,5,6,7,8,9};

//先排序

bubbleSort(array,10);

//二分查找

int key;

int index=-1;

printf("输入你想查找的数字:");

scanf("%d",&key);

index=binarySearch(array,10,key);

if(index>=0)

{

printf("找到这个数字位于第%d个",index);

}

else

{

printf("没有找到这个数!");

}

printf("\n");

return 0;

}

冒泡排序(升序排序1):

#include void bubbleSort(int a[],int len)

{

int i,j,t;

for(i=0;ia[j+1])

{

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

}

}

}

int main()

{

int array[10]={4,7,9,1,2,6,5,3,8,0};

//冒泡排序

bubbleSort(array,10);

printf("排序后的数组为:\n");

int i;

for(i=0;i<10;i++)

{

printf("%d ",array[i]);

}

printf("\n");

return 0;

}

选择排序法:(升序排序法2)

#include void select_sort(int a[],int n)

{

int i,j,k,t;

for(i=0;i

插入排序:(升序排序法3)

#includevoid InsertionSort(int *num,int n)

{

int i = 0;

int j = 0;

int tmp = 0;

for(i = 1;i=0&&tmp=0对其进行边界限制。第二个为插入判断条件

{

num[j+1] = num[j];//若不是合适位置,有序组元素向后移动

j--;

}

num[j+1] = tmp;//找到合适位置,将元素插入。

}

}

int main()

{

int i = 0;

int num[8]={9,3,4,2,6,7,5,1};

InsertionSort(num,8);

/*这个函数必须知道元素的个数,所以将元素个数传入。

有心者可以在函数内部用sizeof求出元素个数 */

for(i=0;i<8;i++)

{

printf("%d ",num[i]);

}

return 0;

}

执行情况:

第一题:

8d8a02278640d534fd6dd9f2ff67e1ba.png

第二题&第三题&第四题:

cf54239f4594b669e444f1556f9d285c.png

知识总结:

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

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

相关文章

常用于解决放缩问题的基本不等式及其几何直观证明

考研中遇到放缩问题就需要用到不等式&#xff1a; 一般放缩的地方就是夹逼准则&#xff0c;还有判断多元函数极限是否存在。 基本不等式&#xff1a; (调和均值 ≤ 几何均值 ≤ 算术均值 ≤ 平方均值) 当且仅当ab时等号成立。 基本不等式的几何直观证明&#xff1a; 基本不…

c语言 连接哨兵 redis6,Redis哨兵--缓存服务器

redis哨兵说明:通过缓存服务器可以有效的提升用户的访问效1.注意事项:A:缓存的数据结构应该选用K-V结构,只要K唯一那么结果必然相同B:缓存总的数据不可能一直储存,需要定期将内存数据进行优化,LRU算法....C:缓存的运行数据要求要快,C语言实现... 运行在内存中D:如果缓存运行的数…

复数和复变指数函数和三角函数和欧拉公式关系及几何直观意义

证明欧拉公式 如果这么看自变量&#xff1a;θωt\theta \omega t θωt那么就可以发现欧拉公式的几何意义。 复数的表示形式 通过下面对比可以发现&#xff0c;用复指数表示复数在几何上更直观。 复数的运算 1.加法运算 设z1abi&#xff0c;z2cdi是任意两个复数&#xf…

利用DHT22和Arduino测量温湿度并显示在串口和OLED显示屏上

实验结果 温湿度显示在串口&#xff1a; 温湿度显示在OLED屏幕&#xff1a; 实验代码 #include "U8glib.h" #include "DHT.h"U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); #define DHTTYPE DHT22 // DHT 22 (AM2302) #define DHTPIN 2 // wh…

ipv6地址格式c语言,IPv6地址格式详解:ipv6地址格式怎么写?

*截止2021年5月20日 21:26&#xff0c;共有39098人阅读了本文。金协ёжзийклмK圉 圊IPv6地址格式详解&#xff1a;ipv6地址格式怎么写&#xff1f;IPv6 地址大小为 128 位。首选的 IPv6 地址表示为&#xff1a;__x:__x:__x:__x:__x:__x:__x:__x&#xff0c;其中每个 x 是…

使用函数求素数和

题目要求&#xff1a; 本题要求实现一个判断素数的简单函数、以及利用该函数计算给定区间内素数和的函数。 素数就是只能被1和自身整除的正整数。注意&#xff1a;1不是素数&#xff0c;2是素数。 输入的数n不能被2-√n整除&#xff0c;说明是素数 输入的数n能被2-√n整除&…

c语言猴子选大王指针,C语言描述怎么用循环队列实现猴子选大王

匿名用户1级2016-12-16 回答#include #include typedef struct node//定义链表节点类型{int data;struct node *next;}linklist;int main(){int i, n, k, m, total;linklist *head, *p, *s, *q;printf("请输入猴子总数:");// 读入问题条件scanf("%d", &…

linux修改栈指针x86,x86-堆栈指针未填充16时libc的system()导致分段...

x86-64 System V ABI保证在调用之前进行16字节的堆栈对齐,因此,允许libc系统将其用于16字节的对齐加载/存储.如果您破坏了ABI,那么当事情崩溃时,这就是您的问题.在进入某个函数时,在调用推送了一个返回地址之后,RSP -8会对齐16个字节,再按一次将使您可以调用另一个函数.当然,通…

求余弦函数的近似值

题目要求 本题要求实现一个函数&#xff0c;用下列公式求cos(x)的近似值&#xff0c;精确到最后一项的绝对值小于e&#xff1a; cos(x)x​0​​ /0!−x​2​​ /2!x​4​​ /4!−x​6​​ /6!⋯ 函数接口定义&#xff1a; double funcos( double e, double x ); 其中用户传…

android xml怎么建立,androidXmlSerializer创建XML文件

要完成的样子如下张010作死0核心代码:private void serializer(FileOutputStream outputStream) {try {//构建解析器XmlSerializer xmlSerializer Xml.newSerializer();//输出文件流及编码格式xmlSerializer.setOutput(outputStream, "UTF-8");//xml声明及编码格式x…

Altium Designer20新建项目\导入库\绘制原理图\导入pcb\绘制pcb

1.新建项目 2.新建原理图和PCB 3.新建原理图库和pcb库 4.导入原理图库和pcb库 点击如图所示 然后点击安装&#xff0c;找到需要安装的位置&#xff0c;打开 然后在下拉框里就可以找到&#xff0c;并选择外部的库 5.绘制原理图 在Components里面选择一个库然后找元器件 然…

红魔1android版本能升到多少,红魔5G:实力全开,比快更快

红魔5G&#xff1a;实力全开&#xff0c;比快更快2020-03-20 20:37:090点赞0收藏0评论在当代年轻人的生活里&#xff0c;手游似乎已经成为必不可少的一部分&#xff1a;心情不好来一局、初次见面来一局、闲来无事来一局。各大手机厂商洞察到这一点&#xff0c;纷纷推出针对手游…

dart开发Android服务,关于android:在Flutter应用中使用由swagger生成的Dart代码生成的Web服务...

我正在尝试使用Flutter开发一个移动应用程序&#xff0c;我使用swagger生成了包含所有Web服务的Dart文件代码生成。我想从Web服务中获取所有用户的列表。 在屏幕上&#xff0c;我想为每个用户显示&#xff1a;图像&#xff0c;名字&#xff0c;姓氏和电子邮件。 我已经在main.d…

Altium Designer20原理图绘制

1.网络标签 如图所示&#xff0c;添加网络标签&#xff0c;两个相同标签连到一块 添加name&#xff0c;可以直接按TAB键改名&#xff0c;如果需要上横线&#xff0c;在字母后面加’\‘ 2.电源标识 3.画线 这里的线不是导线&#xff0c;不具有电气特性&#xff0c;是用来划…

Altium Designer20原理图库放置引脚报错解决方案

原理图库里点击放置引脚&#xff0c;然后AD20报错。 View Pin threw an exception. System.Windows.Markup.XamlParseException: 在“System.Windows.Markup.StaticResourceHolder”上提供值时引发了异常。 —> System.Exception: 无法找到名为“JustificationToAlignmen…

android微信表情导出来的,微信表情怎么导出 如何批量备份微信表情

微信表情怎么导出&#xff1f;如何批量备份微信表情&#xff1f;因为微信自身的软件限制因素&#xff0c;导致我们无法直接在手机客户端中完成自定义表情的导入操作&#xff0c;所以还请各位小伙伴们移步PC端同步助手来导入自定义表情哦~1)下载安装同步助手电脑版&#xff0c;将…

输出指定范围内的完数

题目要求 本题要求实现一个计算整数因子和的简单函数&#xff0c;并利用其实现另一个函数&#xff0c;输出两正整数m和n&#xff08;0<m≤n≤10000&#xff09;之间的所有完数。所谓完数就是该数恰好等于除自身外的因子之和。例如&#xff1a;6123&#xff0c;其中1、2、3为…

android 视频录制和上传,关于android实时视频录制与上传 .

关于android的实时视频录制现在网上炒的很火&#xff0c;我想把自己学习研究的一个视频录制的demo 的心得与大家分享一下使用的是MediaRecorder 以及使用SurfaceView进行录制的。视频录制的部分也比较简单&#xff0c;直接看API的图就可以很清楚的知道步骤了。Android的MediaRe…

输出指定范围内的Fibonacci数

题目要求 本题要求实现一个计算Fibonacci数的简单函数&#xff0c;并利用其实现另一个函数&#xff0c;输出两正整数m和n&#xff08;0<m≤n≤10000&#xff09;之间的所有Fibonacci数。所谓Fibonacci数列就是满足任一项数字是前两项的和&#xff08;最开始两项均定义为1&a…

html5中正则表达式怎么加,HTML5中的字母正则表达式(Alphabetic Regex in HTML5)

HTML5中的字母正则表达式(Alphabetic Regex in HTML5)我是regex的新手&#xff0c;但我需要找到一种方法来为HTML5表单添加一个过滤器&#xff1a;例如&#xff0c;任何人都可以帮我设置模式属性中的内容公认&#xff1a;JohnFrank不接受&#xff1a;Ke$haB0B(只接受字母字符。…