随笔
文章平均质量分 70
zsQgqdsd1002
这个作者很懒,什么都没留下…
展开
-
memcpy
void* Mymemcpy(void* dst, void* src, int count){ assert(dst && src); void* p = dst; while (count != 0) { *(char*)dst = *(char*)src; ((char *)dst)++; ((char *)src)++; count--; } return p;}int main(){ int arr1[10] = { 1,2,3,5,6 }原创 2021-06-28 23:32:35 · 152 阅读 · 1 评论 -
memmove
mommovevoid* Mymemmove(void* dst, void* src, int count){ assert(dst && src); void* p = dst; if (src > dst) { while (count != 0) { *(char*)dst = *(char*)src; ((char*)dst)++; ((char*)src)++; count--; } } else { count--原创 2021-06-27 23:29:27 · 96 阅读 · 0 评论 -
判断子串在主串中位置的函数——strstr函数
我们首先还是来看一下strstr在msdn中的定义:char *strstr( const char *string, const char *strCharSet );The strstr function returns a pointer to the first occurrence of strCharSet in string. The search does not include terminating null characters.strstr函数返回字符串中第一个出现的strCh原创 2021-06-24 22:01:49 · 1054 阅读 · 0 评论 -
strcmp和strncmp
strcmp和之前一样我们先来看看strcmp在msdn中的定义:The strcmp function compares string1 and string2 lexicographically and returns a value indicating their relationship.strcmp函数按字典顺序比较string1和string2,并返回一个表示它们之间关系的值。这里有这么几点需要注意: 1.strcmp函数对字符串比较的实质是比较双方的ASCII码 2.strcmp原创 2021-06-23 23:23:14 · 251 阅读 · 0 评论 -
strcat和strncat
strcat我们依旧先看一下strcat函数在msdn中的解释:The strcat function appends strSource to strDestination and terminates the resulting string with a null character. The initial character of strSource overwrites the terminating null character of strDestination. No overflow原创 2021-06-22 22:25:45 · 425 阅读 · 0 评论 -
简易的扫雷展示
#define _CRT_SECURE_NO_WARNINGS 1#define ROW 9#define COL 9#define ROWS ROW + 3#define COLS COL + 3#define MINE_COUNT 10#include<stdio.h>#include<stdlib.h>#include<time.h>void InitBoard(char board[][COLS], int row, int col, char原创 2021-06-21 23:05:36 · 65 阅读 · 0 评论 -
strcpy和strncpy
strcpy我们先来看看在msdn中是如何解释这个函数的:char *strcpy( char *strDestination, const char *strSource );The strcpy function copies strSource, including the terminating null character, to the location specified by strDestination.strcpy函数将strSource(包括终止的空字符)复制到strDesti原创 2021-06-20 22:56:42 · 83 阅读 · 0 评论 -
谁是凶手?
谁是凶手?一、题目二、具体实现1.思路2.具体实现总结一、题目今天做了一道很有意思的题目,题目是这么说的:某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。以下为4个嫌疑犯的供词:A说:不是我。B说:是C。C说:是D。D说:C在胡说已知3个人说了真话,1个人说的是假话。现在请根据这些信息,写一个程序来确定到底谁是凶手。二、具体实现1.思路拿到这个题的时候基本是大脑一片空白?要说让我拿数学做这道题那肯定是分分钟拿下,但是要写一个程序,我当时在想,这**也能编程实现原创 2021-06-19 23:11:14 · 109 阅读 · 0 评论 -
数据在内存中的存储
数据在内存中的存储前言一.原码,反码,补码二、整型数据在内存中的存储三、浮点型数据在内存中的存储1.思考2.答疑解惑总结前言我们知道,创建一个变量就要在内存中开辟一块空间,开辟的这块空间的大小是取决于你数据类型的,变量又可以分为很多类,有整型变量,有浮点型变量,有字符型变量等等,我们今天所要分析的就是整型和浮点型在内存中的存储方式。提示:以下是本篇文章正文内容,下面案例可供参考一.原码,反码,补码我们首先来了解一下原码,反码,补码三个概念。他们三个的表示方法有两个共同的地方,就是都是分为符号位原创 2021-06-18 23:54:46 · 137 阅读 · 1 评论 -
初识C之五花八门的操作符2
操作符2前言一、操作符回顾二、初窥门径(续)5.单目操作符6.关系操作符7.逻辑操作符8.条件操作符9.逗号表达式10.下标引用操作符总结前言上一节我们讲了四种操作符,今天我们来继续补充剩下的一些操作符。一、操作符回顾名称符号算术操作符+ - * % /移位操作符<< >>位操作符& l ^赋值操作符=单目操作符! - + & sizeof ~ – ++ * (强传类型)关系操作符&g原创 2021-06-17 23:57:21 · 92 阅读 · 0 评论 -
初识C之五花八门的操作符1
操作符1前言一、操作符?二、初窥门径1.算术操作符2.移位操作符3.位操作符4.赋值操作符总结前言在C语言中,有很多语句有着特殊的功能以及作用,那么有一些符号也一样和语句一样起着重要的作用,我们把这些有作用的符号叫做操作符,今天就让我们一起来认识一下C语言中的一些操作符。一、操作符?操作符(也叫运算符)——它们是一些表示特定的数学或逻辑操作的符号。操作符的种类繁多,大体可以分为11类:项目Value算术操作符+ - * % /移位操作符<<原创 2021-06-16 22:24:57 · 106 阅读 · 1 评论 -
大端存储和小端存储
大端存储和小端存储1.大端模式2.小端模式3.如何判断现在的系统的大小端模式总结1.大端模式大端模式又叫大端存储,是指高数据存放在低地址,将低数据存放在高地址,地址从小向大增加,数据从高位向地位存放,我们以一个int类型的变量来作说明:int main() { int i = 256; return 0;}我们来看用一张图来表示一下:我们都知道数据的存储都是在栈里进行的,并且是由栈底开始往栈顶存,也就是由高地址存向低地址,那么对于int类型的i,我们知道它所占的字节数是4,那么它里面的八原创 2021-06-15 23:53:26 · 2640 阅读 · 0 评论 -
初识C之循环语句中的两个关键字
两个重要的关键字前言1.break2.continue总结前言我们在之前简单的介绍了循环语句的三剑客,我们也知道了循环语句的一些基本性质,我们知道循环语句一定要有的三要素,初始化,条件判断以及调整变量,那如果我想在循环过程中找到某一个结果的时候就让循环停止,而非让循环持续到结束,我要如何做呢?这就不得不提到两个重要的关键字——break和continue了。1.break我们首先用一段代码引出我们的主人公break:int main() { int a = 0; for (int i =原创 2021-06-14 22:21:38 · 422 阅读 · 4 评论 -
初识C之循环语句三剑客
循环语句前言一、循环是什么?二、循环语句三剑客1.for循环基本介绍执行顺序注意事项2.while循环基本介绍执行顺序注意事项3.do while循环基本介绍执行顺序注意事项总结前言上一篇我们简单的介绍了选择语句两兄弟的基本介绍以及各自存在的缺陷,那么C语言中除了选择语句还有很多其他的特殊语句,我们今天要介绍的就是——循环语句三剑客。一、循环是什么?提到循环语句就不得不先说一下循环,因为你既然叫循环语句,那么肯定是在循环的情况下才可以去使用这个循环语句。那么循环是什么呢?就是同一件事情我们要完成原创 2021-06-13 18:43:18 · 192 阅读 · 0 评论 -
初识C——你好,选择语句
选择语句前言一、两种选择语句二、选择语句两兄弟1.if语句基本介绍需要注意的问题(1)else的匹配(2)缺陷2.switch语句基本介绍需要注意的问题(1)default的使用(2)break的使用3.缺陷总结前言写了好几天的博客,突然发现自己好像有很多基础的地方没有写到,既然是和大家一起学习,我觉得这些基础一点的东西还是很有必要拿出来说一说,跟大家交流一下我的心得体会。在C语言中,由一个分号";"隔开的就是一条语句,打个比方:printf("hahaha");这就是一条语句,在C语言中,原创 2021-06-12 22:40:27 · 140 阅读 · 0 评论 -
浅析static
static前言一、static是什么?二、static的用法及作用1.static修饰局部变量2.static修饰全局变量3.static修饰函数总结前言C语言中有许多关键字,每个关键字都有着不同的作用以及意义,例如typedef的作用是起别名,const的作用是让一个变量变成常量等等,而今天要说的是一个可以修饰变量和函数的关键字——static。提示:以下是本篇文章正文内容,下面案例可供参考一、static是什么?Static是C语言中众多关键字其中之一,其作用是修饰变量和函数,那么具体原创 2021-06-11 22:57:08 · 75 阅读 · 1 评论 -
初识C语言之常量与变量
常量与变量前言一、变量1.全局变量和局部变量全部变量局部变量2.二者的区别二、常量字面常量const修饰的常变量#define定义的标识符常量enum枚举常量总结前言今天要说的这哥俩,是所有的程序里不可或缺的元素之一,所有程序中一定都能看到这哥俩的影子。是它,是它,是它,就是它!我们的朋友~小哪吒!不好意思走错片场了。今天要介绍的就是——常量和变量。一、变量1.全局变量和局部变量在C语言中,会变化的值就用变量来表示,这个变化的方法方式是可以由我们人为规定的。变量在命名是需要注意,变量名的第原创 2021-06-10 13:41:47 · 150 阅读 · 0 评论 -
小时候最爱玩的三子棋(井字棋)它来了
三子棋前言一、设计思路?二、程序框架1.大体框架2.逐个实现最终成果前言根据前面一段时间的学习,我觉得自己对C语言已经有了算是入门级别的一个了解,今天就用之前所学到的知识来实现一个简单的三子棋程序,也就是我们平时所说的井字棋。一、设计思路?做一个三子棋程序都需要写什么呢?游戏菜单创建一个棋盘,即一个二维数组,并初始化打印棋盘成“井”状玩家下棋,用X表示判断游戏状态的条件,胜?平?负?继续?电脑下棋,用O表示判断游戏状态的条件,胜?平?负?继续?循环2~7二、程序框架1.原创 2021-06-09 16:42:12 · 489 阅读 · 2 评论 -
初识C语言之冒泡排序
冒泡排序的实现提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录冒泡排序的实现前言一、基本思路二、具体实现1.冒泡排序1.02.冒泡排序2.03.冒泡排序3.0总结前言冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他原创 2021-06-08 13:36:54 · 141 阅读 · 1 评论 -
递归4之递归的利弊
递归的利弊文章目录递归的利弊前言一、递归是什么?二、递归与非递归处理斐波那契数列1.递归2.非递归3.对比总结前言前面经过对递归的了解与学习,让我处理问题多了一种思考方式,递归确实是一种很不错的处理问题的方式,但是不是所有的问题都可以用递归来处理,也不是所有的问题都适合用递归处理,今天我们就探讨一下递归在处理一些问题方面的利弊。一、递归是什么?回顾一下递归到底是什么,递归就是让程序不断调用自身,最后达到我们预期的目标的一个技巧。在一些复杂的问题中,递归可能只需要少量的代码就可以描绘出解题过原创 2021-06-07 13:16:14 · 428 阅读 · 0 评论 -
递归3之汉诺塔的实现
汉诺塔的实现前言一、汉诺塔是什么?二、实现思路1.尝试找出规律2.代码初步思路三、最终实现总结前言一、汉诺塔是什么?汉诺塔,又称河内塔,讲的是在一根柱子上从下往上按照大小顺序摞着64片圆盘,要求把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。二、实现思路1.尝试找出规律我们假设在柱子上有n个圆盘,三根柱子分别为A,B,C,A为起始柱子,B则是起到中转作用的中转柱子,而C就是目标柱子。先穷举出n较小的一些情况,看看能不原创 2021-06-06 18:10:41 · 125 阅读 · 1 评论