自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 Day 31.32 进程间通信(1)

1管道通信1.1无名管道int pipe(int filedis[2]);函数返回值 :成功:0,出错:-1 当一个管道建立时,它会创建两个文件描述符:filedis[0]用于读管道,filedis[1]用于写管道。                     管道通信1.2有名管道命名管道(FIFO)和无名管道基本相同,但也有不同点:无名管道只能由父子进程...

2018-08-19 18:20:48 154

原创 Day 29.30 进程控制编程(2)

 1.vfork()#include<unistd.h> pid_t vfork(void); vfork函数创建的新进程,刚开始时会暂时与父进程共享地址空间。另外,vfork函数保证子进程先运行,在它调用exit之后父进程才可能被调度运行。 区别:1.   fork:子进程拷贝父进程的数据段                   vfork:子进程与父进...

2018-08-19 18:07:32 141

原创 Day 27.28 进程控制编程(1)

进程的基本概念:进程是一个程序的一次执行的过程。它和程序是有本质区别的,程序是静态的,它是一些保存在磁盘上的指令的有序集合,没有任何执行的概念;而进程是一个动态的概念,它是程序执行的过程,包括了动态创建、调度和消亡的整个过程。它是程序执行和资源管理的最小单位。当一个程序开始执行后,在执行开始到执行完毕退出这段时间里,它在内存中的部分就被称作一个进程。因此,对系统而言,当用户在系统中键入命令执行...

2018-08-13 21:31:17 194

原创 Day 25.26 文件编程--不带缓存的文件I/O操作

文件的概念:“文件”这个名词不陌生,什么是文件?系统资源(内存、硬盘、一般设备、进程间通信的通道等)的一个抽象,对系统资源进行访问的一个通用接口。采用这种“文件”的方式有什么好处?对资源提供通用的操作接口,可以极大地简化系统编程接口的设计。既然文件是一个通用的接口,由于系统资源多种多样,是不是意味着文件类型也多种多样? 文件的类型:常见的文件类型(可以通过文件来访问的系...

2018-08-11 19:27:02 333

原创 Day 23.24 堆排序与归并排序

堆排序什么是堆?堆一般都指的是二叉堆,它满足二个特性:1、父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。2、每个结点的左子树和右子树都是一个二叉堆(都是大顶堆或小顶堆)。如下为一个小顶堆(父结点的键值总是小于任何一个子节点的键值)由此,若序列{k1,k2,…,kn}是堆,则堆顶元素(或二叉树的根)必为序列中n个元素的最小值(或最大值)。  若在输出堆顶的...

2018-08-09 23:41:26 185

原创 Day 21.22 树--二叉链表使用

#include <stdio.h>#include <stdlib.h>#define MAX 20 typedef char ElementType;typedef struct treenode{    ElementType value;    struct treenode* left;    struct treenode* ...

2018-08-07 21:29:39 141

原创 Day 19.20 数据结构--栈的顺序结构与链式结构 循环队列与链队列

栈的顺序结构//用数组实现顺序栈#include <stdio.h>#include <stdlib.h> #define T 1#define F 0#define MAX 20//栈的最大容量 typedef int Elementype;typedef int Status; typedef struct stack...

2018-08-05 21:03:38 167

原创 Day 18 数据结构--循环链表与双向循环链表

循环链表#include <stdio.h>#include <stdlib.h>#define T 1#define F 0 typedef int Elementype;typedef int Status; struct node{    Elementype value;    struct node* next;...

2018-08-05 20:53:49 99

原创 Day 17 数据结构基础-单链表

#include <stdio.h>#include <stdlib.h>#define T 1#define F 0 typedef int Elementype;typedef int Status;//函数的返回类型 struct Node//链表结点结构体{    Elementype value;    struct N...

2018-08-05 20:45:40 114

原创 Day 16 顺序表(数组与结构体)

1.线性表--顺序表(数组)#include <stdio.h>#define MAX 10 typedef int Elementype;                                                                        //数组中元素类型 ,定义别名方便统一定义数据类型 void print(Ele...

2018-08-01 23:50:52 580

原创 Day 14.15 关键字与内存管理

关键字1.struct一、结构体概念     前面我们了解了数组(Array),它是一组具有相同类型的数据的集合。但在实际的编程过程中,我们往往还需要一组类型不同的数据,例如对于学生信息登记表,姓名为字符串,学号为整数,年龄为整数,所在的学习小组为字符,成绩为小数,因为数据类型不同,显然不能用一个数组来存放。在C语言中,可以使用结构体(Struct)来存放一组不同类型的数据。结构体的定义形...

2018-08-01 09:08:19 143

原创 Day 13 指针与字符串 指针与函数

指针与字符串一、数组存放字符     C语言中没有特定的字符串类型,我们通常是将字符串放在一个字符数组中,(例1_1)字符数组归根结底还是一个数组,上节讲到的关于指针和数组的规则同样也适用于字符数组(例1_2)。二、字符指针     除了字符数组,C语言还支持另外一种表示字符串的方法,就是直接使用一个指针指向字符串,例如:char *str = "hello";     或者:...

2018-07-29 16:34:25 194

原创 Day 12 指针与数组

指针与数组:数组指针一、利用数组名遍历数组元素     数组(Array)是一系列具有相同类型的数据的集合,每一份数据叫做一个数组元素(Element)。数组中的所有元素在内存中是连续排列的,整个数组占用的是一块内存。以int arr[] = { 99, 15, 100, 888, 252 };为例,该数组在内存中的分布如下图所示:定义数组时,要给出数组名和数组长度,数组名可以...

2018-07-29 16:32:26 114

原创 Day 11 指针初学

指针的概念计算机中所有的数据都必须放在内存中,不同类型的数据占用的字节数不一样,例如 int 占用4个字节,char 占用1个字节。为了正确地访问这些数据,必须为每个字节都编上号码,就像门牌号、身份证号一样,每个字节的编号是唯一的,根据编号可以准确地找到某个字节。      我们将内存中字节的编号称为地址(Address)或指针(Pointer)(即地址就是指针)。地址从 0 开始依次...

2018-07-27 23:18:39 132

原创 Day 10 递归函数

 #include <stdio.h> long func(int);                 //func函数调用 int main(){    int n;                     //调用实参    scanf("%d",&n);    printf("%d=%ld",n,func(n));       ...

2018-07-26 21:30:01 170

原创 Day 9 数组

一.一维数组1.一维数组的定义格式为:类型说明符 数组名[常量表达式];例如: int a[10];  它表示定义了一个整形数组,数组名为a,有10个整形元素。2.在定义数组时,需要指定数组中元素的个数,方括弧中的常量表达式用来表示元素的个数,即数组长度。3.常量表达式中可以包括常量和符号常量,但不能包含变量。数组说明中其他常见的错误:① float a[0];    ...

2018-07-25 23:52:44 299

原创 Day 8 冒泡排序与选择排序

1.冒泡排序第一层循环冒泡排序第一层循环的含义为:需要遍历多次数组,才能将这个数组排好序,第一次遍历,确定一个最值。第二次遍历,确定第二个最值。。。。第len-1次遍历,确定第len-1最值。  len-1个最值都确定了,自然整个数组也就排好序了。因此,第一层循环含义为:需要遍历len-1次数组,才能将数组排好序。第二层循环通常定义为int j;  j是一个与i...

2018-07-24 21:18:22 104

原创 Day 7 素数问题

1.输入1-100的数 判断是否为素数#include <stdio.h> int main(){    int num;    scanf("%d",&num);     int i;    int count = 0;    for(i = 2;i < num;i++)    {        if(0 == num %...

2018-07-24 00:03:59 119

原创 Day 6 数据输入输出

1.putcharc语言函数之一,作用是向终端输出一个字符。其格式为putchar(c),其中c可以是被单引号(英文状态下)引起来的一个字符,可以是介于0~127之间的一个十进制整型数(包含0和127),也可以是事先用char定义好的一个字符型变量。putchar函数的基本格式为:putchar(c)。(1)当c为一个被单引号(英文状态下)引起来的字符时,输出该字符(注:该字符也可为转...

2018-07-22 21:28:40 254

原创 Day 5 基本运算符初学与运算

一共有十五个优先级: 同一优先级的运算符,运算次序由结合方向所决定 1   ()  []  .  ->        (括号,成员排第一) 2   !  ~   -(负号) ++  --   &(取变量地址)*   (type)(强制类型)    sizeof       (单目运算排第二) 3   * / %         (乘除余三) 4   +...

2018-07-21 23:56:50 359

原创 Day 4 bash shell脚本预习

Shell命令Linux系统中的Shell种类众多,常见的有bash、csh以及ksh等。不同的Shell语法有所不同,不能互换使用,但每种Shell都有其特色之处。这里我们选择bash来讲述Shell脚本编程的基础知识。Shell命令可以事先写在一个文件中,使用时Shell读取文件中的命令逐条解释,这种文件被称为脚本。如何创建shell脚本1. 编写一个简单的Shell脚本,输出字...

2018-07-20 20:31:23 317

原创 Day 3 Linux(目录篇 、文件操作篇 、压缩解压相关命令, 编辑器vi 、编译器gcc 、调试器gdb、 makefile工程管理器初学)

一.目录篇:1.文件处理命令:cp英文原意:copy语法:cp -rp[源文件或目录][目的目录] 源文件可以同时是多个,即同时复制到多个文件-r 复制目录-p保留文件属性,比如文件创建时间等等,此时和创建硬链接有点相似,但是不能实时更新-f强制打开文件即使文件不能打开,也要强制打开 2.文件处理命令:mv英文原意:move语法:mv [源文件或目录] [目...

2018-07-19 20:29:56 239

原创 补:Day 1 Linux文件目录及命令

(一)linux文件及目录:Linux中,除了"/"以外,其他的所有符号都可以用来做文件的命名在Linux中,目录的分隔符也是使用/来分隔的,所以/是不能用来命名文件的在Liunx中,文件名,命令,选项,参数等等都是严格区分大小写的,在windows没有这种特征,所以在今后我们在敲一文件名,选项,参数,都是要严格区分大小写的(二)文件处理命令:命令格式:命令 -选项 参数 (选...

2018-07-18 21:12:47 276

原创 Day2 C语言预习作业

 1.什么是计算机程序?什么是编程语言?为什么需要编程语言?编程语言是用来干嘛的?举例一些编程语言,以及他们各自的特点?2.编辑好的程序到成为可以运行的可执行文件,要经历哪几个过程? 3.现阶段为什么要学习C语言,而不是其他的编程语言?C语言有什么特点?3.现阶段为什么要学习C语言,而不是其他的编程语言?C语言有什么特点?4.什么是常量,什么是变量?都有哪些分类? 5.标识符的命名...

2018-07-18 17:26:56 271

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除