自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (3)
  • 收藏
  • 关注

原创 Linux进程控制(待完善)

一、进程创建 1、fork创建子进程采用写时拷贝技术,效率高,使用灵活。 2、vfork创建子进程会阻塞父进程,直到子进程exit退出或替换后,父进程才会运行。vfork创建效率较高,但创建后父子进程共用同一个虚拟地址空间,共用数据段,代码段,会造成栈混乱。 二、进程终止 1、main()中return退出进程会刷新缓冲区。 2、return或exit库函数退出时会刷新缓冲区;_exit接口退出时...

2021-04-08 20:29:21 225

原创 C++ 类和对象

类的引入:C语言中,结构体中只能定义变量,在C++中,结构体内不仅可以定义变量,也可以定义函数。 类的定义:类由成员函数和成员变量组成。 定义类的两种方式:声明和定义全部放在类体中;声明在.h文件中,定义在.cpp文件中。 访问限定符:public, private, protected (1) public修饰的成员在类外可以直接被访问; (2) protected和private修饰的成员在类外不能直接被访问; (3) 访问权限作用域从该访问限定符出现的位置开始直到下一个访问限定符出现时为止; (4).

2021-04-08 20:28:35 238

原创 Linux进程相关概念

1、进程概念:进程就是PCB,是操作系统对一个运行中的程序的描述,通过这个描述,实现对程序的运行调度。在Linux中描述进程的结构体叫做task_struct,它是Linux内核的一种数据结构,被装载到RAM(内存)里并且包含进程的信息。 2、CPU分时机制:CPU以极快的速度切换调度运行所有程序,造成大家都在同时运行的假象。 3、fork创建进程:pid_t fork (void) 通过复制调用...

2020-05-08 15:22:41 219

原创 Linux常见指令

一、基本指令 1、xshell中,复制:ctrl + insert,粘贴:shift + insert 2、ls指令:ls [选项] [目录或文件]。对于目录,列出改目录下所有子目录和文件;对于文件,列出文件名及其他信息。 3、pwd指令:显示当前所在目录。 4、cd指令:cd 目录名。改变工作目录,将当前工作目录改变到指定目录下。 5、touch指令:touch [选项]… 文件…。更改文档或目...

2020-05-08 14:34:48 227

原创 八大排序(插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序、计数排序)

1、插入排序(升序) void InsertSort(int* a,int n) { for(int i=0;i<n-1;i++) { int end = i; int tmp = a[end+1]; while(end > 0) { if(a[end]>tmp) { a[end+1] = a[end]; --end; } ...

2020-04-08 14:59:35 356

原创 数据结构 二叉树的c语言实现

typedef char BTDataType; typedef struct BinaryTreeNode { BTDataType _data; struct BinaryTreeNode* _left; struct BinaryTreeNode* _right; }BTNode; 1、通过前序遍历的数组"ABD##E#H##CF##G##"构建二叉树 BTNode* CreatB...

2020-03-25 16:48:13 320

原创 数据结构 堆的c语言实现 TopK问题

typedef int HPDataType; typedef struct Heap { HPDataType* _a; int _size; int _capacity; }Heap; 1、交换数据 void Swap(int* a, int* b) { int x = *a; *a = *b; *b = x; } 2、向下调整算法(建小堆) // 小堆 // 前...

2020-03-11 15:08:13 896 1

原创 数据结构 队列的c语言实现

// 链式结构:表示队列 typedef struct QListNode { struct QListNode* _next; QDataType _data; }QNode; // 队列的结构 typedef struct Queue { QNode* _front; QNode* _rear; }Queue; 1、动态申请一个结点 QueueNode * ...

2020-02-07 15:06:24 240

原创 数据结构 栈的c语言实现

// 支持动态增长的栈 typedef int STDataType; typedef struct Stack { STDataType* _a; int _top; // 栈顶 int _capacity; // 容量 }Stack; 1、判空 #include "stack.h" #define DEFSTACKSIZE 100 void CheckCapacity(Stack...

2020-02-07 14:50:24 193

原创 数据结构双向链表的增删改查(c语言实现)

// 带头+双向+循环链表增删查改实现 typedef int LTDataType; typedef struct ListNode { LTDataType _data; struct ListNode* _next; struct ListNode* _prev; }ListNode; 1、创建返回链表的头结点 ListNode* ListCreate() { ListNode*...

2020-01-02 22:10:49 1175

原创 数据结构单链表的增删查改(c语言实现)

1、单链表 typedef int SLTDataType; typedef struct SListNode { SLTDataType data; // val struct SListNode* next; }SListNode; 2、动态申请一个节点

2019-12-17 10:13:24 655

原创 c语言实现题目:原地移除数组中某元素、数组去重、合并两个有序数组、向右旋转数组、数组形式的整数加法

1、原地移除数组中所有的元素val,要求时间复杂度为O(N),空间复杂度为O(1)。 int removeElement(int* nums, int numsSize, int val) { int i = 0; for (int j = 0; j < numsSize; j++) { ...

2019-12-04 21:49:49 361

原创 数据结构顺序表增删查改操作

1、顺序表动态存储 typedef struct SeqList { SLDataType* a; // 指向动态开辟的数组 size_t size ; // 有效数据个数 size_t capicity ; // 容量空间的大小 }SeqList; 1、顺序表初始化 void SeqListInit(SeqList* ps) { assert(ps); ps-&g...

2019-12-03 11:18:07 292

原创 自定义类型:结构体、位段、枚举、联合

一、结构体 1、结构体声明 struct Stu { char name[20];//声明(声明时不开空间) int age; char sex[5]; char id[20]; };//分号不能丢 2、结构体自引用 struct Node { int data; struct Node* next; }; 3、结构体重定义 typede...

2019-11-21 17:18:31 207

原创 c语言实现通讯录小项目(简易版、动态内存版、文件版)

一、简易版通讯录 1、头文件部分Contact.h #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<string.h> #pragma once #define NAME_MAX 100 #define GENDER_MAX 10 #define TELE_MAX 12 #define ADDR_M...

2019-11-19 17:45:26 1492

原创 模拟实现字符串函数strcpy、strcat、strstr、strchr、strcmp、memcpy、memmove、strncpy、strncat、strncmp

1、实现strcpy char* my_strcpy(char *dest,const char *src) { char *ret = dest; assert(dest != NULL); assert(src != NULL); while((*dest++ = *src++)) { ; } return ret; } 测试函数: int main() { cha...

2019-11-18 21:09:42 218

原创 c语言题(左旋字符串、判断一个字符串是否为另外一个字符串旋转之后的字符串、找出数组中只出现一次的两个数、空瓶换汽水)

1、实现一个函数,可以左旋字符串中的k个字符。(ABCD左旋一个字符得到BCDA,ABCD左旋两个字符得到CDAB ) #include<stdio.h> #include<stdlib.h> #include<string.h> void left_remove(char* p, int n, int len) { int i = 0; for (i = ...

2019-11-18 14:22:39 153

原创 c语言实现三子棋游戏

1、头文件 game.h #include<stdio.h> #include<time.h> #define ROW 3 #define COL 3 void InitBoard(char board[ROW][COL], int row, int col); void DisplayBoard(char board[ROW][COL], int row, int c...

2019-10-16 17:56:16 127

原创 c语言实现简单扫雷游戏

1、头文件 game.h #include<stdio.h> #include<time.h> #define EASY_COUNT 10 #define ROW 9 #define COL 9 #define ROWS ROW+2 #define COLS COL+2 void InitBoard(char arr[ROWS][COLS], int rows, ...

2019-10-16 17:42:10 283

原创 关于操作符的总结

操作符 算术操作符 +, - , * , / , % 其中%的两个操作数必须为整数。 移位操作符 << 左移操作符 , >> 右移操作符 左移相当于乘法(左移1位,乘2) 右移相当于除法(右移1位,除2) 右移运算分为逻辑移位(左边用0填充,右边丢弃)和算术移位(左边用符号位填充,右边丢弃) 位操作符 & 按位与 | 按位或...

2019-09-22 18:51:36 112

原创 杨氏矩阵:有一个二维数组,数组的每行从左到右是递增的,每列从上到下是递增的。 在这样的数组中查找一个数字是否存在。 时间复杂度小于O(N)。

杨氏矩阵:有一个二维数组,数组的每行从左到右是递增的,每列从上到下是递增的。 在这样的数组中查找一个数字是否存在。 时间复杂度小于O(N)。 数组: 1 2 3 2 3 4 3 4 5 1 3 4 2 4 5 4 5 6 1 2 3 4 5 6 7 8 9 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <s...

2019-06-08 15:10:07 420

原创 调整数组使奇数全部都位于偶数前面

c语言编程:调整数组使奇数全部都位于偶数前面。 要求: 输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> void Print(int* p, int r...

2019-06-08 14:13:18 273

原创 c语言 操作符位运算 练习题(二进制翻转值、平均值、找数字、逆序字符串)

1、编写函数:unsigned int reverse_bit(unsigned int value); 这个函数的返回值是value的二进制位模式从左到右翻转后的值。 如: 在32位机器上25这个值包含下列各位:00000000000000000000000000011001 翻转后:(2550136832)10011000000000000000000000000000 程序结果返回:2550...

2019-05-27 11:16:41 385

原创 c语言练习题(二进制中 1 的个数、输出二进制奇数位偶数位序列、输出整数每一位、两个int整数二进制表达中有多少个位不同、跳水比赛、谁是凶手、杨辉三角)

1、写一个函数返回参数二进制中 1 的个数。比如: 15:0000 1111 (4 个 1)。 程序原型: int count_one_bits(unsigned int value) { // 返回 1的位数 } int count_one_bits(unsigned int value) { int i = 0; int count = 0; while (value) { count++; ...

2019-05-22 10:54:12 313

原创 c语言 函数递归(斐波那契数、n^k、DigitSum(n)、字符串中的字符反向排列、strlen、求n的阶乘、打印一个整数的每一位)

1、递归和非递归分别实现求第n个斐波那契数。 //递归方法计算第n个斐波那契数列的值 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int fib(int x) { int result = 0; if (x > 2) return result = fib(x - 1) ...

2019-05-15 12:33:55 252

原创 c语言(函数练习题:乘法表、两数交换、判断闰年、初始化数组、清空数组、逆置数组、判断素数)

1、实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定,输入9,输出9×9口诀表,输入12,输出12×12的乘法口诀表。 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> void mul_table(int x) { int i = 0, j = 0; for (i = 1; i...

2019-05-13 14:33:45 212

原创 编写一个程序,可以一直接收键盘字符,如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。

#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char ch; char Str; printf(“请输入一个字符或字符串:\n”); while ((ch = getchar()) != EOF)...

2019-05-02 16:20:01 151

原创 编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输入,最多输入三次。三次均错,则提示退出程序。

#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> //密码123456 int main() { int i = 0; char password[20] = { 0 }; for (i = 0; i < 3; i++) { printf("请输入密码:>"); sc...

2019-05-02 16:13:24 588

原创 在整型有序数组中查找想要的数字, 找到了返回下标,找不到返回-1。(折半查找)

#include<stdio.h> #include<stdlib.h> int main() { int arr[] = { 1,2,3,4,5,6,7,8,9,10 }; int left = 0; int right = sizeof(arr) / sizeof(arr[0]) - 1; int key = 7; int mid = 0; while (left &l...

2019-05-02 15:54:17 154

原创 完成猜数字游戏。

#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> #include <stdlib.h> #include <time.h> void menu() { printf("*******************\n"); printf(" 1.play \n"); printf(" 2.ex...

2019-05-02 15:40:16 294

原创 c语言题(素数、乘法口诀表、闰年、交换、求最大值、最大公约数、水仙花数、求Sn=a+aa+aaa+aaaa+aaaaa、计算1到 100 的所有整数中出现多少次数字9)

1、打印100-200之间的素数。 #include<stdio.h> #include<stdlib.h> int main() { int i = 0; for (i = 100; i <= 200; i++) { int j = 0; for (j = 2; j <= i - 1; j++) { if (i%j == 0) { break; } } if ...

2019-04-21 17:40:07 303

原创 学好编程!

第一篇博客! 账号注册了很久,来写第一篇属于自己的博客,就当立个flag,好好学习编程,为自己以后的职业生涯多个选择。 我会从c语言开始学起,然后c++,java等语言,学习操作系统,数据结构,计算机网络等相关专业基础知识,多多参加一些比赛,经常练习自己的编程能力,试着去着手做一些小项目,一点一点,脚踏实地,慢慢积累,成为一个有能力的人。 编程能力的提高,要靠不断的大量练习,我希望每周能有三天的时...

2019-04-19 11:41:56 159

教资 高中信息技术.docx

高中信息技术教资笔试知识点总结和真题及答案 教师资格证笔试资料 分为各个章节的知识点总结和习题 大概四五十页

2020-09-09

单片机C51 万年历

AT80C51 89C51 单片机课程设计 万年历 带闹钟功能 温度功能 显示时间日期 Keil 4软件

2019-04-27

自动售卖机

EDA电子设计自动化课程设计 自动售卖机 状态机的原理和内容 完整代码 软件quartusII直接可用。

2019-04-25

空空如也

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

TA关注的人

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