c语言
I_l_I
这个作者很懒,什么都没留下…
展开
-
利用消息队列实现简单聊天程序
本篇利用消息队列的特性实现简单的聊天程序,msgsnd发送数据,msgrcv接收数据来实现聊天功能,消息队列详情。数据接收端msgrcv//这是一个以system V消息队列实现的聊天程序客户端//// 1.创建消息队列//// 2.从消息队列中获取一个数据,打印出来//// 3.从标准输入中获取一个数据,组织成消息队列节点发送//// 4.删除消息队列//// 接...原创 2018-11-10 15:48:29 · 5683 阅读 · 0 评论 -
利用管道实现进程间的单向通信
管道是进程间通信的最原始方式,今天我们利用管道的进程间通信,来实现简单的进程间单向通信首先我们需要了解命名管道的一些特性命名管道的使用与创建然后创建一个fifo_c的文件来实现输入数据和发送数据 /*这是一个命名管道的实现,往命名管道中写入数据,并且发送给另一个进程 * 1. 创建一个命名管道 * int mkfifo(const char*pathname,m...原创 2018-11-10 10:52:12 · 780 阅读 · 0 评论 -
进程间通信(二)命名管道fifo
命名管道:管道的一个限制就是只能用在亲缘进程之间,如果我们想在不相关的进程间进行数据交换,可以使用FIFO文件来进行,它叫做命名管道。命名管道:文件系统可见,是一个特殊类型(管道类型)的文件。命名管道可以应用在同一主机的任意进程间通信。命名管道的创建:(1)在命令行的创建$ mkfifo filename;(2)在程序里创建int mkfifo(const char*filen...原创 2018-11-10 10:15:42 · 441 阅读 · 0 评论 -
剑指offer:递归和非递归实现
题目描述:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 n<=39什么是斐波那契数列斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、2...原创 2018-09-28 21:04:50 · 184 阅读 · 0 评论 -
带参数的main
在我们通常使用的main函数中,一般是不带参数的,但是其实main函数也是可以带参数的,main函数中允许带两个参数,一个是 ( int argc ) 另一个是 (char * argv[] )如下:int main(int argc ,char *argv[])这两个参数的做用分别是:argc指命令行输入参数的个数,argv存储了所有的命令行参数,例如写一个hello.exe ,并运行该...原创 2018-09-19 20:06:39 · 3113 阅读 · 0 评论 -
模拟实现字符串操作
#include<stdio.h>#include<assert.h>#include<windows.h>int my_strstr(char*arr1, char*arr2)//字符串查找{ assert(arr1&&arr2); int len1 = strlen(arr1); int len2 = str...原创 2018-09-11 21:42:11 · 155 阅读 · 0 评论 -
归并排序心得
归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。 #include&lt;stdio.h&gt;#include&lt;Windows.h&gt;#in...原创 2018-05-29 23:19:09 · 506 阅读 · 0 评论 -
快速排序
快速排序由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 1.左右指针法 在数组的左和右分别定义一个指针,begin指针从前往后遍历找到一个比key大的数据停止,end从后往前遍历...原创 2018-05-28 15:28:55 · 657 阅读 · 0 评论 -
希尔排序
希尔排序(Shell’sSort)是插入排序的一种又称“缩小增量排序”,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。 定义一个gap来标记分组,第一组为红线标记,第二组为绿线标记,第三组为蓝线标记,每次...原创 2018-05-21 01:14:07 · 196 阅读 · 0 评论 -
c语言实现直接插入排序
直接插入排序是一种最简单的排序方法,其基本操作是将一条记录插入到已排好的有序表中,从而得到一个新的、记录数量增1的有序表。 #include<stdio.h>#include<Windows.h>#include<assert.h>void Insertsor(int *a,int n ){ for (int i = 0; i &...原创 2018-05-20 18:38:54 · 1754 阅读 · 1 评论 -
输出1000到2000的闰年
#include<stdio.h>int main(){ int i; for (i = 1000; i <= 2000; i++) if ((i % 4 == 0 &&i % 100!= 0) ||i % 400 == 0) { printf("%d ", i); }...原创 2018-04-18 13:34:56 · 436 阅读 · 0 评论 -
打印100到200的素数
#include&lt;stdio.h&gt;#include&lt;math.h&gt;int main(){ int i, j,t; for (i = 101; i &lt;= 200; i+=2) { t = sqrt(i); for (j = 2; j &lt;= t; j++) { if...原创 2018-04-18 13:32:14 · 158 阅读 · 0 评论 -
9乘9口诀表
#include<stdio.h>int main(){ int i = 0; int j = 0; int sub = 0; for (i = 1; i < 9; i++) { for (j = 1; j <= i; j++) { sub = i * j; printf("原创 2018-04-18 11:17:19 · 586 阅读 · 0 评论 -
程序员告白,浪漫跳动的心(c语言)
明天就七夕了,今天给大家推荐一个非常厉害的小程序。 出处https://blog.csdn.net/qq_35038153/article/details/70227029?locationNum=13&amp;amp;amp;fps=1 废话不多说了,先上动图, 可以实现一颗火红的跳动的心,绝对可以打动你的程序媛女朋友的小妙招。代码如下:#include &amp;amp;lt;stdio.h&amp;amp;gt;#incl...原创 2018-08-16 17:34:56 · 6537 阅读 · 6 评论