自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【C语言】文件操作

1、为什么使用文件一般数据持久化的方法有:把数据存放在磁盘文件、存放到数据库等方式。使用文件我们可以将数据直接存放在电脑的硬盘上,做到数据的持久化。2、什么是文件2.1程序文件包括源程序文件(后缀为.c),目标文件(Windows环境后缀为.obj),可执行程序(Windows环境后缀为.exe).2.2数据文件文件的内容不一定是程序,而是程序运行时读写的数据,比如程序运行需要从中读取数据的文件,或者输出内容的文件。本章讨论的是数据文件。在之前处理数据的输入输出都是以终端为对象的,即从终端

2021-07-25 18:04:43 85

原创 【C语言】自定义类型:结构体,枚举,联合

1.1结构的基础知识结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。1.2结构的声明例如描述一个学生:struct Stu{char name[20];int age;char sex[5];char id[20];};1.3特殊的声明在声明结构的时候,可以不完全的声明。比如://匿名结构体类型struct{int a;char b;float c;}x;struct{int a;char b;float c;}a[20],*p

2021-07-25 15:51:43 123

原创 【C语言】字符函数和字符串函数

前言:C语言中对字符和字符串的处理很是频繁,但是C语言本身是没有字符串类型的,字符串通常放在常量字符串中或者字符数组中。字符串常量适用于那些对它不做修改的函数。函数介绍1、strlensize_t strlen ( const char* str );1.1字符串把’\0’作为结束标志,strlen函数返回的是在字符串中’\0’前面出现的字符个数(不包含’\0’).1.2参数指向的字符串必须要以’\0’结束。1.3注意函数的返回值为size_t,是无符号的。1.4学会strlen函数的模拟实

2021-07-25 14:44:01 154

原创 【C语言】动态内存管理

1.为什么存在动态内存分配我们已经掌握的内存开辟方式有:int val = 20; //在栈空间上开辟四个字节char arr[10] = {0}; //在栈空间上开辟10个字节的连续空间但是上述的开辟空间方式有两个特点:1、空间开辟大小是固定的。2、数组在声明的时候,必须指定数组的长度,它所需要的内存在编译时分配。有时我们需要的空间大小在程序运行时才能知道,那数组的编译时开辟空间方式就不能满足了,于是便需要使用到动态内存开辟。2、动态内存函数的介绍malloc 和 freeC语言提

2021-07-25 14:08:18 85

原创 【C语言】数据存储

数据在内存中以2进制的形式存储对于整数来说:整数二进制有3种表示形式:原码、反码、补码正整数:原码、反码、补码相同负整数:原码、反码、补码要进行计算按照数据的数值直接写出的二进制序列就是原码原码的符号位不变,其他位按位取反,得到的就是反码反码+1,得到的就是补码整数在内存中存储的是补码在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理; 同时,加法和减法也可以统一处理(CPU只有加法器)此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件

2021-05-28 16:12:01 53

原创 【C语言】三子棋--简易版

#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>#define ROW 3#define COL 3char a[ROW][COL];void menu();void game();void Init();void Print();void Player();void AI();int check(int x, int y, char ch);int Judge(char c

2021-05-07 15:33:22 71

原创 【C语言】扫雷游戏

如果想写出一个扫雷游戏,那么我们需要提前规划好整个游戏的框架,然后再开始敲代码,这样思路会比较清晰,如果遇到一些BUG,建议先自己思考,实在想不通再上网学习他人的写法。以下是我的代码:我分成了三部分:1、主函数.c 文件 2、game.c 文件 3、game.h 头文件上图是第一部分第二部分第三部分实际效果:!](https://img-blog.csdnimg.cn/20210503184219452.png?x-oss-process=image/watermark,ty

2021-05-03 18:44:47 105

原创 【C语言】数组----笔记

一维数组的创建和初始化数组的创建数组是一组相同类型元素的集合。数组的创建方式:type_t arr_name [const_n];//type_t 是指数组的元素类型//const_n 是一个常量表达式,用来指定数组的大小数组创建的实例://代码1int arr1[10];//代码2int count = 10;int arr2 [ count ] ; //此时数组无法正常创建,因为count是一个变量!//代码3char arr3[10];float arr4 [ 1 ];d

2021-05-03 18:36:11 111

原创 【C语言】函数递归与迭代---笔记

1、函数可以嵌套调用2、函数不可以嵌套定义3、链式访问:指把一个函数的返回值作为另外一个函数的参数。4、函数的声明和定义函数声明:1、告诉编译器有一个函数叫什么,参数是什么,返回类型是什么,但是具体是不是存在,无关紧要。2、函数的声明一般出现在函数的使用之前。要满足先声明后使用。3、函数的声明一般要放在头文件中的。函数定义:函数的定义是指函数的具体实现,交代函数的功能实现函数递归:程序调用自身的编程技巧称为递归。递归做为一种算法在程序设计语言中广泛应用。一个过程或函数在其定义或说明中有

2021-05-03 18:32:00 254

原创 【C语言】辗转相除法

当我们初学C语言时,遇到一个需要我们求出这两个数字的最大公约数的题目,这时我们应该如何去设计代码来完成目的呢?公约数是什么?这个首先我们需要清楚。它是指能够同时整除几个整数的数,在这个题目里,便是能同时整除两个数字的数。而最大公约数则是指,在上述的基础上,加上一个最大,即在公约数里找到最大的数。那么我们先不要去想辗转相除法,而是去思考如何设计代码来完成目的。假设有两个数字:24,18 我们需要求出他们之间的最大公约数。这个最大公约数是不是需要满足1、能同时整除两个数字 2、在公约数

2021-04-14 12:00:39 9138

原创 [C语言]二分法查找(有序数组)

二分查找(折半查找)每当我们需要在一个有序数组里查找到一个自己想要的数字时,通常的方法是使用循环一个个的去寻找。但是如果数组里的数量特别大时,这种方法便会显得笨重。因此我们便可以使用二分查找来寻找我们需要的数字。注意:这种算法只能在有序数组里使用,如果是无序数组这种方法无法使用!算法思想:1、我们需要两个变量来充当数组的最左端下标和最右端下标2、另外设置一个变量来充当数组的中间下标。3、这三个变量是会改变的。代码:(头文件和函数我就不写了)int left = 0;int right =

2021-04-12 17:23:37 858

原创 [C语言]分支与循环---个人笔记

注意:int n = 10 ;int arr [ n ] = { 0 }; 这里的n是错误的,表达式必须含有常量值,也就是n必须是常量。C语言是结构化的程序设计语言!1、顺序结构 (顾名思义,便是从头执行到尾,没有其他情况)2、选择结构(指程序里有分情况讨论的地方)3、循环结构(当本次循环体里的语句执行完后,回到循环头部,开始判断是否能进行下一次循环,如果不能,将跳出循环)C语言是如何表达真和假呢?1、非0就是真 即使是-1也表示真2、0 就是假if语句里写判断条件时,需要注意的地方:

2021-04-10 16:35:19 79

原创 初始C语言(2)--个人笔记

~按(二进制)位取法 把所有二进制位中数字,1变成0,0变成1整数在内存中存储的是补码,一个整数的二进制表示有3种:1、原码2、反码3、补码负数的计算:例如: -1:100000000000000000000000000000001(原码)11111111111111111111111111111111111110(反码)11111111111111111111111111111111111111(补码)负数的原码转到反码所遵守的原则是符号位不变,其他位按位取反正整数的原码、反码

2021-04-10 11:14:27 95

原创 C语言字符串,八进制和十六进制的表示

1、字符串在结尾的位置隐藏了一个\0的字符,但是这个\0并不会算在字符串的长度里。2、\0是字符串的结束标志为什么第一个数组输出的是abc,而第二个数组输出的结果不是我们所想呢?这是因为第二个数组并不是字符串,而是多个字符所组成。而我没有给第二个数组的末尾添加‘\0’字符,从而导致后面是随机数所造成的乱码。直到随机数成为了’\0’时才会停止。第一个数组之所以能输出abc,是因为"abc"是一个字符串,所以默认结尾后添加’\0’字符。当上面这张图运行程序时,第一个和第二个的结果会一样吗?结

2021-04-04 12:47:18 4941

原创 一、初始C语言

什么是C语言C语言是一门通用的计算机编程语言,广泛应用于底层开发。这个底层如何理解呢?首先,我们所使用的电脑中,我们所看到的软件,都叫做应用层。而在应用层之下呢,有操作系统以及驱动。操作系统使用驱动来操作电脑里的硬件。而在应用层之下的操作系统以及驱动,我们都叫做底层。至于更多关于如何解释什么是C语言的,建议大家百度看看←_←第一个C语言程序//#include<stdio.h>//这是头文件int main()//这是主函数,main函数是整个程序的入口。{ }//如果不使

2021-04-03 13:24:21 173

原创 编程小白的开始

**我从小就喜欢通过电脑玩游戏,而这,使得我接触到了许多有趣的游戏。这些优秀的游戏背后,必然是有编程的参与才能让这些游戏得以实现。 如今,我已成为一名大学生,选择的专业也是关于计算机,对于编程的过程,我在一开始也是懵懵懂懂,可一旦能够接受之后,才能发现编程之中的乐趣。或许会在运行错误时,绞尽脑汁地去寻找错误,亦或者运用自己的智慧去完成老师所安排的作业。这一切带来的过程,都带给了我那与以前不同的经历。 因此,在编程的道路上,我为自己定下了目标:每周至少学习C++6个小时,并且尝试去理解其中..

2021-04-02 14:32:34 3495 9

空空如也

空空如也

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

TA关注的人

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