嵌入式:C高级 Day4

一、整理思维导图

二、写一个函数,获取用户的uid和gid并使用变量接收

三、整理冒泡排序、简单选择排序和快速排序的代码 

冒泡排序

#include <myhead.h>void output(int arr[], int len);
void bubble_sort(int arr[], int len);int main(int argc, const char *argv[])
{int arr[] = {9, 6, 15, 11, 23, 14, 32, 12};int len = sizeof(arr) / sizeof(arr[0]);output(arr, len);bubble_sort(arr, len);output(arr, len);return 0;
}void bubble_sort(int arr[], int len){int count, temp;for(int i = 0; i < len; i++){count = 0;for(int j = 0; j < len - 1 - i; j++){if(arr[j] > arr[j + 1]){temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;count++;}}if(count == 0){break;}}
}void output(int arr[], int len){for(int i = 0; i < len; i++){printf("%d ", arr[i]);}puts("");
}

简单选择排序:

#include <myhead.h>void output(int arr[], int len);
void select_sort(int arr[], int len);int main(int argc, const char *argv[])
{int arr[] = {9, 6, 15, 11, 28, 25, 22, 37, 18};int len = sizeof(arr) / sizeof(arr[0]);output(arr, len);select_sort(arr, len);output(arr, len);return 0;
}void select_sort(int arr[], int len){int min, temp;for(int i = 0; i < len - 1; i++){min = i;for(int j = i + 1; j < len; j++){if(arr[min] > arr[j]){min = j;}}if(min != i){temp = arr[min];arr[min] = arr[i];arr[i] = temp;}}
}void output(int arr[], int len){for(int i = 0; i < len; i++){printf("%d ", arr[i]);}puts("");
}

快速排序:

#include <myhead.h>void output(int arr[], int len);
void quick_sort(int arr[], int low, int high);
int onesort(int arr[], int low, int high);int main(int argc, const char *argv[])
{int arr[] = {9, 6, 13, 11, 19, 25, 12, 37, 22};int len = sizeof(arr) / sizeof(arr[0]);output(arr, len);quick_sort(arr, 0, len - 1);output(arr, len);return 0;
}void quick_sort(int arr[], int low, int high){while(low >= high){return;}int mid = onesort(arr, low, high);quick_sort(arr, 0, mid - 1);quick_sort(arr, mid + 1, high);
}int onesort(int arr[], int low, int high){int key = arr[low];while(low < high){while(low < high && key <= arr[high]){high--;}arr[low] = arr[high];while(low < high && key >= arr[low]){low++;}arr[high] = arr[low];}arr[low] = key;return low;
}void output(int arr[], int len){for(int i = 0; i < len; i++){printf("%d ", arr[i]);}puts("");
}

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

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

相关文章

数字化时代,如何做好用户体验与应用性能管理

引言 随着数字化时代的到来&#xff0c;各个行业的应用系统从传统私有化部署逐渐转向公有云、行业云、微服务&#xff0c;这种变迁给运维部门和应用部门均带来了较大的挑战。基于当前企业 IT 运维均为多部门负责&#xff0c;且使用多种运维工具&#xff0c;因此&#xff0c;当…

Linux命名管道进程通信

文章目录 前言一、什么是命名管道通信二、创建方式三、代码示例四、文件进程通信总结 前言 命名管道 是实现进程间通信的强大工具&#xff0c;它提供了一种简单而有效的方式&#xff0c;允许不同进程之间进行可靠的数据交换。不仅可以在同一主机上的不相关进程间进行通信&…

桌面端UI自动化测试如何让SplitButtonControl展开

原始SplitButtonControl图 从图中鼠标所指的控件属性为&#xff1a; ControlType&#xff08;控件类型&#xff09;: SplitButtonControl ClassName&#xff08;类名&#xff09;: SplitButton AutomationId&#xff08;自动化ID&#xff09;: esri_geoprocessing_Pyt…

挑战Open AI!!!马斯克宣布成立xAI.

北京时间7月13日凌晨&#xff0c;马斯克在Twitter上宣布&#xff1a;“xAI正式成立&#xff0c;去了解现实。”马斯克表示&#xff0c;推出xAI的原因是想要“了解宇宙的真实本质”。Ghat GPT横空出世已有半年&#xff0c;国内外“百模大战”愈演愈烈&#xff0c;AI大模型的现状…

C语言——自定义类型详解[结构体][枚举][联合体]

自定义类型详解 前言&#xff1a;一、结构体1.1结构体的声明1.2结构体内存对齐1.3位段&#xff08;位域&#xff09; 二、枚举2.1枚举类型的定义2.2枚举类型的优点2.3枚举的使用 三、联合体3.1联合体类型的定义3.2联合体的特点3.3联合体大小的计算 前言&#xff1a; 我打算把结…

Android 13 Hotseat定制化修改

一.背景 由于需求是需要自定义修改Hotseat,所以此篇文章是记录如何自定义修改hotseat的,应该可以覆盖大部分场景,修改点有修改hotseat布局方向,hotseat图标数量,hotseat图标大小,hotseat布局位置,hotseat图标禁止形成文件夹,hotseat图标禁止移动到Launcher中,下面开始…

实例036 使窗体标题栏文字右对齐

实例说明 窗口标题栏中的文字是窗口的重要说明&#xff0c;该文字可以标示窗口的功能、状态或名称等信息&#xff0c;一般该文字是居左显示的&#xff0c;在本例中设计一个标题栏文字右对齐的窗口。本实例运行结果如图1.36所示。 技术要点 在C# 2.0中实现这一功能非常容易&am…

【LeetCode】105. 从前序与中序遍历序列构造二叉树

作者&#xff1a;小卢 专栏&#xff1a;《Leetcode》 喜欢的话&#xff1a;世间因为少年的挺身而出&#xff0c;而更加瑰丽。 ——《人民日报》 105. 从前序与中序遍历序列构造二叉树 力扣 题目描述&#xff1a; 给定两个整数数组 preord…

研究论文关于火灾的烟雾探测

普拉萨梅什加德卡尔 探索所有模型以选择最佳模型。 一、介绍&#xff1a; 烟雾探测器检测烟雾并触发警报以提醒他人。通常&#xff0c;它们存在于办公室、家庭、工厂等。通常&#xff0c;烟雾探测器分为两类&#xff1a; Photoelectric Smoke Detector- 设备检测光强度&#x…

Go微服务实践 - Rpc核心概念理解

概述 从0研究一下Golang已经Golang的微服务生态体系&#xff0c;Golang的微服务首先要从Rpc开始&#xff0c;在升级到Grpc&#xff0c;详细介绍这些技术点都在解决什么技术问题。 Rpc Rpc (Remote Procedure Call) 远程过程调用&#xff0c;简单的理解是一个节点请求另一个节…

LeetCode150道面试经典题--最后一个单词的长度(简单)

1.题目 给你一个字符串 s&#xff0c;由若干单词组成&#xff0c;单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 2.示例 3.思路 通过对字符串的反转&#xff0c;转为数组开始遍历&#xff0c…