![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
LeonardoZzzz
史家之绝唱,无韵之HelloWorld
展开
-
【强迫症满足向】字母金字塔: C语言实现
本质是for循环练习,金字塔在文后一、初级阶段:输出菱形星星这是一个for循环小练习为满足强迫症需求, Leo先放个图爽一爽算法本身不难, 注意循环结束条件, 初值的设置, 利用等差公式等等要点有以下几点: 1.菱形行数一定为奇数 2.分上下2部分 3.上三角比下三角多一层 (行) 4.上半部分, 包含对称行, (n+1)/2行【n为总...原创 2018-11-24 22:32:00 · 21746 阅读 · 1 评论 -
插入排序:C语言实现
一、概述 插入排序很好理解,与实际生活紧密相连,或可以说是来源于生活中的感悟。插入排序是用的非常多的一种排序方法,因为在实际编程中,数据往往是排序好的所以往排序好的数据中插入新数,此时用插入排序会特别快速。 假设十个人按排队,从矮到高,你会怎么排? 首先,第2人与第1人比,若2比1矮,那么他们互换位置,否则不动,此时前两位已经排好了...原创 2018-12-09 10:01:13 · 278 阅读 · 1 评论 -
冒泡排序:C语言实现
冒泡排序是最简单的排序方法,理解起来较易。虽然它步骤较多,不是最快的,但它最基本。原理:从左到右,相邻元素比较,每比较一轮,就找到序列中最大/ 最小的一个,此数就从序列最右边“冒出来”。/* 使用冒泡排序,从大到小排*/#include <stdio.h>int main(void){ int a[] = {900,2,5,456,48,15,23...原创 2018-12-11 09:57:07 · 1653 阅读 · 0 评论 -
选择排序:C语言实现
选择排序是一种简单直观的排序算法,它与冒泡排序很相似,都是比较n - 1轮,每轮 n-1-i 次每轮找出一个最大/ 最小值。只不过冒泡放最后,选择排序放最左。 (本文以从小到大排序为例) 与冒泡的比较:冒泡是将相邻的数逐个进行比较:(从小到大为例)只要前面的比后面的大,就互换倆数,直到最后将最大的数“浮到”最末尾,如此循环。 而...原创 2018-12-11 10:41:39 · 200 阅读 · 0 评论 -
快速排序:C语言实现
一、快排概述 快速排序是一个非常优秀且常用的排序算法,尤其是在大数据的排序应用中,最为常见。 虽然“快速”,但逻辑也是最复杂,最难理解。本算法采用分治的思想,涉及递归和函数调用,效率是极高的。 到底什么是“分治”?所谓分治,就是以一个数为基准,将序列中的其他数往它两边“扔”。 以从小到大排序为例,比它小的都扔到左边,比它大的都扔到右...原创 2018-12-11 13:48:50 · 275 阅读 · 0 评论 -
指针的学习:C语言实现
填坑与复习C语言中指针的各个知识点,本文包含多个实例,具体请点击目录索引查看一、指针变量的定义与使用(1)两个指针变量之间仅支持相减运算(2)指针变量仅支持加减运算。(3)指针作为函数参数二、指针操作数组(1)指针、数组、函数综合练习(2)用const修饰指针变量1. const int *p = &a;2.int * const p = &a...原创 2019-06-09 20:01:34 · 253 阅读 · 0 评论 -
十进制转换为n进制:C语言实现
思路:手写进制转换,除以n,取余,得商,再取余,直到商为0.利用int型数组,倒序存储所得的每个余数注意:循环求余时 i 多加了一次,i-1,一直取到 j 为0/* 利用数组 将十进制转换为任意进制*/#include <stdio.h># define M 100void change(int srcnum,int R){ int i=0,j=0; ...原创 2019-06-04 14:28:38 · 10199 阅读 · 2 评论 -
数组倒置算法:C语言实现
思路:数组元素交换 执行步数为数组长度的一半(不论长度为奇数偶数)注意:数组最后一个元素下标与长度的关系/* 数值倒置算法,以中间分割*/# include <stdio.h>int main(void){ int a[] = {1,3,342,1,43,64,459,34,86,578,45,87,86,29,98,123,231,435...原创 2019-06-04 15:16:39 · 1403 阅读 · 0 评论