- 博客(46)
- 收藏
- 关注
原创 编译器与集成开发环境
一.什么是编译器将高级语言代码转换成CPU能够识别的二进制指令二.常用编译器Windows平台Visual Studio(VS)自带的C/C++编译器是MingW的核心组成苹果电脑上的开发工具,XCode。
2024-10-17 16:50:40 491
原创 C语言小游戏--猜数字
由电脑随机在某个范围内生成一个数字,玩家猜数字并且输入,电脑判断是否正确,正确则游戏结束,错误则给出提示,直到玩家所给的答案正确为止。
2024-10-17 16:35:19 628
原创 汇编语言课后题
栈顶偏移地址存放在 SP 中,从栈顶往下数第二个为 ok 的偏移地址,所以 ok 的偏移地址可表示为 (sp)+2,即标号 s 的偏移地址可表示为 ss:((sp)+2)+(bx)。由于第一条指令的偏移地址为 0,要使 CS:IP 指向第一条指令,则 ds:[bx+1] 的值为零,而 ds:[bx+1] 表示 data 段的第二个字节(mov bx,0)。同理,sub bx,ss:[0eH] 相当于 bx=bx-ss:[0eH]=cs-nop.CS,由于段地址始终没有变化,所以寄存器 bx 的数值为 0。
2024-10-09 09:30:00 1396
原创 汇编语言知识(王爽第四版)
汇编语言,当然,我们学习是在c语言的基础上,那么,我们就先复习一下c语言的知识C语言的基础,进制转换必不可少数组,函数……接下来,我们学习了数据结构:顺序表,链表,排序,查找,队列……那么,我们就正式开始学习汇编语言吧寄存器分类:通用寄存器:AX,BX,CX,DX变址寄存器:SI,DI指针寄存器:SP,BP指令指针寄存器:IP段寄存器:CS,SS,DS,ES标志寄存器:PSW。
2024-10-03 09:30:00 621
原创 指针--传址和传值
在我们之前的学习中,我们学到了指针等相关知识,那么传址和传值是什么意思呢?顾名思义,传值是将变量传给函数,传址就是把变量的地址传给函数我们先来复习一下前面的知识,当然,详情可以通过下面链接学习。
2024-06-01 10:14:50 509
原创 数据库(二)
1.数据模型是数据库系统的核心和基础2.层次模型和网状模型都是格式化模型大数据是指无法在可容忍的时间内用现有IT技术和软硬件工具对其进行感知、获取、不断生成数据管理、处理和服务的数据集合还有专家给出的定义是,大数据通常被认为是PB(10° B)或更高数量级的数据,包括结构化的、半结构化的和非结构化的数据。
2024-05-20 12:38:27 975
原创 数据库--数据库基础(一)
CREATE SCHEMA AUTHORIZATION例1为用户WANG定义一个S-T模式例2为用户ZHANG创建一个模式TEST,并且在其中定义一个表TABLCOL2CREATE TABLE([列级完整性约束条件][列级完整性约束条件]);例子建立一个学生表Student。
2024-05-19 13:33:03 949
原创 C++––初识C++
在前面的学习中,我们在接触c语言的时候,我们先学习的最简单的语句int main()那么,在c++的学习中,我们也从最简单的语句开始学习int main()return 0;让我们逐行解释1.--预处理指令,它告诉编译器引入iostream库,这个库包含了输入和输出的功能2.int main() --C++程序的人口main函数是每个C++程序必有的函数,程序从这里开始执行3.{} --代码块的开始和结束4.
2024-05-13 00:12:53 788
原创 数据结构--图。
图(graph)G由两个集合V和E组成,记为G=(VE)。V是顶点的有穷非空集合;E是边的集合,边是V中顶点的无序对或有序对。E可以是边的空集,者E为空集,则G中只有顶点没有边。2.由于“弧”是有方向的,因此称由顶点集和弧集构成的图为有向图。3.顶点:在图中的数据元素若<v,w> VR,则<v,w>表示从v到w的一条弧弧尾:v(起始点)弧头:w(终端点)是图论中的一种重要概念,用于描述各种事物之间的有序关系。它由一组节点(或顶点)以及连接这些节点的有向边组成。
2024-05-09 08:57:27 726
原创 数据结构––排序
前面,我们已经学习了数据结构中的各种知识那么接下来,我们学习排序。之前我们了解过一些排序,其中最熟悉的就是冒泡排序了。在日常生活中,排序无处不在。
2024-05-02 00:41:12 955
原创 数据结构––广义表
广义表:由n( 0)个表元素组成的有限序列:LS是广义表的名称a是广义表的元素,既可以是表(称为子表)也可以是数据元素(称为原子)n为广义表的长度(n=0的广义表为空表)
2024-04-28 00:08:10 459
原创 数据结构––串
由一个或多个称为空格的特殊字符组成的串(长度是空格字符的个数):子串的定位运算,是一种子串在主串中第一次出现的第一个字符的位置。:串中任意连续字符组成的子序列(空串是任意串的子串):抽取串的一些字符,按照原字符串的顺序进行放置的新串。由零个或者任意多个字符组成的有限序列,是一种特殊的。串是一种特殊的顺序表,因此也可以分为顺序表和链表。:串中的有效元素的个数(不包括\0):2个串的长度及对应的字符都相等。:不包括任何元素的串,长度为0。,每一个元素都是单独一个字符。空格也可以是一个字符。
2024-04-27 23:57:08 380
原创 数据结构––复杂度
是一个数学表达式,是对一个算法在运行过程中临时占用额外存储空间大小的量度空间复杂度不是程序占用了多少bytes的空间,因为这个也没太大意义,所以空间复杂度算的是变量的个数。空间复杂度计算规则基本跟时间复杂度类似,也使用大O渐进表示法。注意:函数运行时所需要的栈空间(存储参数、局部变量、一些寄存器信息等)在编译期间已经确定好了,因此空间复杂度主要通过函数在运行时候显式申请的额外空间来确定。
2024-04-27 08:59:39 1150
原创 数据结构––kmp算法(串)
每一个字符前的字符串都有最长相等前后缀,而且最长相等前后缀的长度是我们移位的关键,所以我们单独用一个next数组存储子串的最长相等前后缀的长度。从主串a和子串的第一个字符开始,将2个字符串的字符一一匹配,如果不匹配,主串就从第二个字符,子串从第一个字符开始再次匹配,如果不匹配,就从主串第三个字符,子串第一个字符开始。kmp算法作为串的一个重要内容,必然有一定的难度,而在看到各类教辅书里的概念与解释后,其晦涩难懂的内容直接劝退一部分人,现在,让我们来看看吧。方法一:暴力求解法(BF算法)
2024-04-21 00:15:00 280
原创 动态内存管理
为什么要进行动态内存分配在之前的学习中,我们开辟内存空间都是固定的,例如但是,如果遇到不知道或者不确定要但是内存空间的时候,这样显然就不合适了。所以就出现了动态内存。
2024-04-20 12:10:34 668
原创 数据在内存中的存储
大端存储模式 : 数据的低位字节内容保存在内存的高地址,数据的高位字节内容保存在内存的低地址。小端存储模式 : 数据的低位字节内容保存在内存的低地址,数据的高位字节内容保存在内存的高地址。
2024-04-20 11:02:57 324
原创 typedef,#define,asserr,exit函数,free函数
加不加typedef,类型不变(加之前是个数组,加之后是数组类型;加之前是个函数指针,加之后是函数指针类型;
2024-04-16 22:23:56 215
原创 编译的基本知识
语法分析的任务是:在词法分析的基础上,根据语言的语法规则,把单词符号串分解成各类语法单元(语法范畴)(短语、子句、句子、程序段、程序),并确定整个输入串是否构成语法上正确的程序。词法分析的任务是:输入源程序,对构成源程序的字符串进行扫描和分解,识别出一个个单词(定义符、标识符、运算符、界符、常数)。这一阶段的任务是:把中间代码(经过优化处理之后的)变换成特定机器上的低级语言代码(绝对指令、可重定位指令、汇编指令)。在词法分析阶段的工作中所依循的是语言的语法规则(或称构词规则)。语义分析和中间代码的产生。
2024-04-15 23:44:51 192
原创 数据结构--栈
由零个或者任意多个字符组成的有限序列,是一种特殊的顺序表,每一个元素都是单独一个字符串的长度:串中的有效元素的个数(不包括\0)空串:不包括任何元素的串,长度为0空格串:由一个或多个称为空格的特殊字符组成的串(长度是空格字符的个数)子串:串中任意连续字符组成的子序列(空串是任意串的子串)主串:包含子的串子序列:抽取串的一些字符,按照原字符串的顺序进行放置的新串匹配模式:子串的定位运算,是一种子串在主串中第一次出现的第一个字符的位置串相等:2个串的长度及对应的字符都相等。
2024-04-15 23:39:43 836
原创 数据结构--顺序表,链表,双向链表
所谓数据结构,拆开来讲,就是数据和结构。数据:所有能输入到计算机中并且能被程序识别和处理的符号集合,包括数值数据(整数,实数),非数值型数据(图形,声音,文字)。结构:数据之间的关系数据对象:相同特性的数据元素的集合数据元素:数据的基本单位数据项:数据元素的最小单位关系图:最基础的数据结构:数组。
2024-04-14 16:32:27 836
原创 二分查找和冒泡排序和数组练习(多个字符从两端移动,向中间汇集)
冒泡排序就是一种排序算法,本质就是通过比较2个相邻元素的大小,把较大的元素逐渐交换到数组的最末尾。
2024-04-05 16:22:09 225 1
原创 打印菱形和金字塔类型(总结)
上面的几道例题都有一个共同的特点,就是都是图形的输出形式,同时,也都有规律可循,其中,都使用了循环和嵌套循环。这个时候,最重要的就是熟练使用循环。首先,要打印一个图形,题目中会给出这个图形,而我们要做的就是通过分析图形来找到其中的规律,通过规律来写出相应的代码,最后进行优化。首先,在之前的学习中,我们了解了菱形的打印,今天我们来对金字塔和菱形这类打印图形的问题,我们来做一个总结。这个题做起来并不难,拓展到这类问题中,就是对图形打印的总结。这个总结的来源是这今天做了一道题。
2024-01-01 16:19:42 554
原创 sizeof和strlen的对比
sizeof只看里面一共有多少字节,包括\0。注意:strlen要找\0,没有就是随机值,如果有,不包括\0。计算字符串长度,统计\0之前的字符个数(不包括\0)1.首先对sizeof和strlen有初步的认识。4/8取决与是哪个平台,x64是4,x86是8。是库函数,使用是要包含头文件string。计算操作数所占内存的大小,单位是字节。
2023-12-16 13:08:29 341
原创 指针相关知识(入门)
在main函数中,test(arr)传递的并非是数组,而是数组首元素的地址,也就是说,在test函数中,形参并没有创建数组,而是一个指针(地址)。导入:当我们要找什么东西时,要先知道他的地址,同样,在内存中,也有不同的地址来存放内容。这时,就要介绍取地址操作符&,格式像0x006FFD70,int,占4个字节,是16进制。sizeof(数组名),这里的数组名是整个数组,计算的是整个数组的大小,单位是字节。&数组名,这里的数组名表示的是整个数组,取出的是整个数组的地址。int:pa指向的对象是int类型的。
2023-12-15 10:35:04 409
原创 分数求和 序列求和
分析:首先将加减忽略,都看成加,就变成了1/1+1/2+1/3+......+1/99+1/100分母是1~100,分子但是1,所以要有1~100的数字(循环)注意:最后的变符号中,再设置一个变量,在每个变量后乘以它,然后,flag=-flag,如果是负数,后面一个数就是正数,如果是正数,下一个数就是负数。计算1/1-1/2+1/3-1/4+1/5 ……+ 1/99 - 1/100 的值,打印出结果。这显然是不对的,因为1/i,当i大于1的时候值都是0,要有小数所以有了如下改变。那么我们写出的代码就是。
2023-12-09 21:58:30 438
原创 结构成员访问操作符
member-list是成员列表,可以有一个或者多个。variable-list是变量列表。使用方法:结构体指针->成员名。使用方法:结构体变量.成员名。2.结构体成员的直接访问。3.结构体成员的间接访问。struct是关键名。tag是结构体标签名。
2023-12-08 07:30:00 441
原创 操作符知识
其中,大部分都较为简单和基础,在之前的学习中都学习到并且在编程中都有掌握,接下来就选择几个介绍。|–对应的二进制位进行或运算,只要有1就 是1,同时为0才是0。接受一个或多个操作数,第一个操作数是函数名,其余的操作数就是传递给函数的参数。&–对应的二进制位进行与运算,只要有0就是 0,同时为1才是1。算术右移:左边用原该值的符号位填充,右边丢弃。逻辑右移:左边用0填充,右边丢弃。^–异或运算,相同为0,相异为1。此时,函数调用操作符所在的地方是。算术操作符:+,–,*,/,%
2023-12-08 07:00:00 371
原创 getchar,putchar
意思是输入一个字符,就会输出这个字符。当然,如果是一个字符,比如输入A,输出A,输入B,输出B。tag a = getchar()与scanf(”%tag“, &a);putchar(48)与printf(“%c“, 48)的效果一样。返回值:getchar返回的是字符的ASCII码值(整数)参数和返回类型都是int型的返回参数是ASCII码值。(tag是getchar的括号里面的数据类型相同)功能:输入一个字符,其值得到这个字符。头文件:#include的ASCII码值是33。
2023-12-08 00:52:00 404
原创 函数(含函数递归,static,extern,自定义函数)
数学中也有函数的概念,那么在语言中的函数与数学中的函数有什么区别,又有什么联系呢?
2023-12-07 20:00:00 386 1
原创 判断是否是闰年(多种解法)
分析:首先,我们要明确什么是闰年,即满足什么条件。(1)能被4整除,但不能被,,100整除。我们知道,当输入一个数(年份),当满足。题目:输入一个年份,判断是否是闰年。第二种,用到了双目操作符。(2)能被400整除。第一种,最初级的方法。
2023-12-06 18:45:00 5697 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人