自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Hash表的基本实现

#include"common.h"#include"hash.h"typedef struct hash_node{ void *key; //key值 void *value; //value值 struct hash_node *prev; //前驱 struct hash_node *next; //后继} hash_node_t;struct hash{ unsigned int buckets; //桶的大小 has

2020-10-27 14:26:08 158

原创 C++入门知识梳理

C++入门知识梳理一级标题二级标题三级标题四级标题五级标题六级标题引用inline#重载一级标题二级标题三级标题四级标题五级标题六级标题1. 什么是重载、重写(覆盖)、重定义(隐藏)?重载的定义为:在同一作用域中,同名函数的形式参数(参数个数、类型或者顺序)不同时,构成函数重载。例如:class A{public: int func(int a); void func(int a, int b); void func(int a, int b, int c);

2020-08-07 17:44:15 165

原创 顺序表的动态存储

顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。在数组上完成数据的增删查改。顺序表一般分为:1.静态顺序表:使用定长的数组存储;2.动态顺序表:使用动态开辟的数组存储;由于静态顺序表相对简单,我们便以动态顺序表为例来实现顺序表的相关接口;首先是顺序表结构体的定义:一般来说顺序表的结构体中主要包含:用于存储数据的数组,用于记录末尾数据下标(还能...

2019-01-24 16:57:20 2015

原创 C语言知识梳理图(初级)

2018-12-07 17:25:17 247

原创 电话簿(文件存储)

相比于动态存储,用文件夹存储联系人信息需要改变的有以下几点:1.将联系人信息存入文件{ FILE* fp = fopen("../test.txt","w"); int i = 0; printf("保存联系人信息...\n"); if(fp == NULL) { printf("文件打开失败,保存失败!\n"); return; } for(i = 0; i<ph...

2018-11-18 19:58:53 1345

原创 电话簿(动态存储)

要实现电话簿,我们可以先写出主函数如下int main(){ int input = 0; Init(); do { menu();//打印菜单 printf("请输入操作序号:"); scanf("%d",&input); clean(); switch(input) { case 1: AddContact(); break; ...

2018-11-18 19:50:35 560

原创 自定义类型:结构体,枚举,联合

结构体“结构”是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。结构体是一种运用了抽象的思想,把具体事物中我们需要的信息提取出来在代码中表示。1.结构体的声明struct student{ char name[20]; int age; char sex[5]; char id[20];};2.结构的自引用struct node{ int d...

2018-11-16 14:35:32 243

原创 练习day—19

1.模拟实现strncpy#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#include<assert.h>char* my_strncpy(char *dest, const char *src, size_t num){ char *ret = dest; assert(dest != NULL)...

2018-11-13 17:14:01 103

原创 模仿qsort的功能实现一个通用的冒泡排序 练习day—18

我们能很容易地实现冒泡排序,代码如下:void Bubble_sort(int arr[],int n)//冒泡排序{ int i = 0; int j = 0; for(j=0; j<n-1; j++) { for(i=0; i<n-1; i++) { if(arr[i+1]<arr[i]) { int tmp = arr[i+1]; ...

2018-11-11 22:13:12 212

原创 指针,二级指针,指针数组与数组指针 练习day—17

1.指针1)指针就是个变量,用来存放地址,地址唯一标识一块内存空间;2)指针的大小是固定的4(8)个字节(32(64)位平台);3)指针是有类型的,指针的类型决定了指针的+/-整数的步长,指针解引用操作时的权限;int main(){ int a = 1; int* pa = &a; *pa = 2; printf("%p\n",&a); printf("%...

2018-11-08 15:05:19 892

原创 练习day—16

今天我们来补充 实现一些string.h库中的字符串函数实现strchr#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <string.h>char *my_strchr(const char* str, int c ){ char* ret = (char*)str; while...

2018-11-06 17:01:18 122

原创 练习—day15

1.一个数组中只有两个数字是出现一次, 其他所有数字都出现了两次。找出这两个数字,编程实现。#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>void find(int arr[], int sz, int *x, int *y){ int i = 0; int j = 0; for(i=0; i<sz; i...

2018-11-04 15:08:06 197

原创 练习—day14

1.实现一个函数,可以左旋字符串中的k个字符。abcd左旋一个字符得到bcdaabcd左旋两个字符得到cdab#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h> #include <string.h>void left_shift(char *p, int...

2018-11-01 12:36:26 129

原创 练习—day13

1.调整数组使奇数全部都位于偶数前面。题目: 输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>void rand(int *p,int sz){ int i =0; int j = 0; f...

2018-10-30 22:28:03 106

原创 了解部分操作符

随着对C语言的不断深入了解,接触到了更多的操作符,现在稍作整理;左移操作符(<<)和右移操作符(>>)左移操作符移位规则:左边抛弃、右边补0;右移操作符移位规则:1.逻辑移位:左边用0填充,右边丢弃2.算术移位:左边用原该值的符号位填充,右边丢弃巧用右移操作符,将能帮助我们解决许多问题,比如写一个函数返回参数二进制中 1 的个数int count_one_...

2018-10-17 12:06:56 109

原创 C语言实现扫雷游戏

今天我们来用C语言实现另一个众所周知的小游戏——扫雷;首先,与五子棋不同的是,为了不让雷被玩家直接看到,我们需要创建两个棋盘。一个用于储存雷,我们将其命名为mine盘,一个能直观的展现给玩家,我们将其命名为show盘;其次,为了算清玩家选择的坐标周围有多少雷,我们无可避免的要访问mine盘对应坐标周围一圈的类容。此时就出现问题了,最外围一圈的雷周围的类容是随机值,会影响判断雷数,所以创建时我们...

2018-10-17 11:12:19 621

原创 零基础写出三子棋游戏;全网最详细解析三子棋的C语言写法!

作为一个游戏你首先得有菜单!于是我们做了个菜单~void menu(){ printf("┏━━━━━━━━━━━━━━━━━━━━━━━━┓\n"); printf("┃ 欢迎来到三子棋 ┃\n"); printf("┣━━━━━━━━━━━━━━━━━━━━━━━━┫\n"); printf("┃ 1.开始游戏 ┃\n"); printf(...

2018-10-11 13:05:40 992

原创 用“指针”实现"交换两数数值"及"三个数从大到小输出"

#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>int main(){ void change(int x,int y); void exchange(int *q1,int *q2); int a = 10; int b = 20; int *p1 = &a; int *p2 = &b; prin...

2018-09-25 17:00:58 3008

空空如也

空空如也

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

TA关注的人

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