- 博客(224)
- 资源 (2)
- 收藏
- 关注
原创 五子棋双人对战 含窗口 可通过鼠标点击
欢迎来到我的五子棋游戏项目!这是一个使用C语言编写的独立窗口应用程序,允许用户通过鼠标点击来下棋。这个游戏具有简洁的界面和直观的交互方式,无论您是五子棋爱好者还是编程爱好者,都可以轻松上手。这个游戏遵循标准的五子棋规则。玩家需要将五个同色棋子连成一条直线(横、竖或斜向)以获得胜利。游戏会在玩家下棋后自动检测并显示赢家。希望您喜欢这个五子棋游戏项目!议,请随时与我联系。
2023-12-21 08:56:04 712 1
原创 【数据库】个人对数据库的认知和可能的演变过程
我说一下我对数据库的认知刚开始的时候,我认为数据库应该是一个类似于excel的表格后来学了编程之后呢,我觉得呀他可能是一个数组,如果内容比较多的话,他可能是一个二维数组,后来我听说数据库里面不止文字信息,我这才应该是一个结构体数组。到了大二真正学数据库的时候,我才发现并没有那么简单,里面还有很多非数据信息和复杂的关系和操作。
2024-09-08 16:54:47 1119
原创 【IT】软件行业发展的前瞻性和希望的广度
这些观点其实非常具有前瞻性和深度,尤其是在自动驾驶技术的安全性考量上,以及程序在医学、国防、教育等领域的潜在应用。作为一个程序员,我完全同意这些领域有着巨大的发展空间和重要的社会价值。下面我将针对您提到的每个领域,简要探讨一些可能的实现方式和技术趋势。总之,随着技术的不断进步,程序在医学、国防、教育等领域的应用前景越来越广阔。作为程序员,我们应当积极投身于这些领域的研究和开发,为社会的进步和发展贡献自己的力量。
2024-09-07 21:52:58 1228
原创 【c++】结构体创意设计 Data (数据隐藏技术)与伪值
Data结构体可以作为更复杂数据结构(如自定义的数据库表行、图论中的节点、或任何需要同时存储数据和指针的场景)的一部分。在这种情况下,num和p指针可以根据特定需求具有不同的含义和用途。
2024-09-06 20:33:16 986
原创 【经验分享】一个陌生的程序从第一行看发现不懂?教你正确的阅读顺序
很多新手在遇到一个陌生的程序的时候呢,都会从第一行开始读。发现根本看不懂。因为程序的最开始一般都是一些预处理命令,全局变量的定义,还有一些自定义函数的定义和声明部分。我自己看代码有一个习惯。我会从入口函数main开始看。这样才能知道程序最开始会干什么事,然后再干什么事。这个顺序恰好符合程序执行的顺序。这样才能更好的理解这个程序。这也是很多经验丰富的程序员在理解新代码或复杂项目时采用的方法。从main函数(或程序的入口点,这取决于具体的编程语言和框架)开始阅读,是理解程序执行流程和逻辑的一个非常有效的方法。
2024-09-06 08:50:54 400
原创 【前端】ui交互设计是什么?它和前端开发有什么关系
UI(用户界面)交互设计在软件开发过程中扮演着至关重要的角色,尽管它并不直接涉及编写代码,但它与软件专业的关系非常紧密。下面我将详细解释UI交互设计的重要性及其与编程的协作方式。
2024-09-05 19:07:41 390
原创 【c++】最新字符串查找技术 :通过id查找(getStringById)
播报编辑getElementById() 方法可返回对拥有指定 ID 的第一个对象的引用。HTML DOM定义了多种查找元素的方法,除了 getElementById() 之外,还有() 和()。不过,如果您需要查找文档中的一个特定的元素,最有效的方法是 getElementById()。在操作文档的一个特定的元素时,最好给该元素一个 id 属性,为它指定一个(在文档中)唯一的名称,然后就可以用该 ID 查找想要的元素。[1]语法:参数:sID : 必选项。字符串(String)。返回值。
2024-09-05 13:44:40 912
原创 【c++】平常自己练习写代码的两个大方向
而编写自定义函数,则更像是在进行一场微观的编程探险。在这个过程中,开发者需要针对特定的问题或需求,设计出高效、简洁且易于复用的代码片段。由于函数通常较为短小精悍,因此它更加考验开发者的逻辑思维能力和创新能力。开发者需要思考如何将复杂的逻辑简化为一系列清晰、有序的步骤,并通过函数的形式进行封装和复用。这种训练有助于培养开发者的抽象思维能力和代码组织能力,使得他们在面对更复杂的编程任务时能够游刃有余。模块化思维。
2024-09-05 09:14:33 870
原创 【数据结构】数据结构是编程语言吗?为什么那么难学 ?
数据结构课程之所以被认为是复杂的,并且课本上文字和理论内容较多,主要是因为这门课程涉及到了许多抽象的概念和原理,如数组、链表、栈、队列、树、图等,以及这些结构上的操作算法。确实如您老师所言,数据结构本身并不是一种编程语言,而是一种组织和管理数据的方式,它是计算机科学中的一个核心概念,对于编写高效、可维护的程序至关重要。可以尝试实现一些基本的数据结构,如链表、栈、队列等,并编写相应的操作函数,如插入、删除、遍历等。通过持续的学习和实践,你将逐渐掌握数据结构的核心概念,并能够在编程中灵活运用它们。
2024-09-03 10:08:41 368
原创 【c++】游戏设计:精准猜数
本游戏设计旨在让用户猜测一个1到100之间的随机数,用户输入的数与随机数之差越小,获得的分数越多。游戏共进行10轮,每轮都会生成一个新的随机数,并计算用户得分,最后输出每轮的随机数、用户输入的数、两者之差以及当前总分数。:计算用户输入的数与随机数之差的绝对值,并根据差值计算本轮得分。:输出本轮的随机数、用户输入的数、两者之差以及当前总分数。:游戏开始时,用户有一个基础分数,设为1000分。:根据差值计算得分,差值越小,得分越高。:每轮游戏开始时,使用。
2024-08-31 12:11:03 223
原创 【c++】通过类来玩转赋值操作“延迟赋值”
我们可以有这样的一种想法,就是我们去修改这个变量的值的时候呢,可以把这个值先存起来,不改变原始值,等到需要的时候再改变。
2024-08-30 14:34:26 404
原创 【c++】为什么指针那么难学,它到底抽象在什么地方 ?
此外,指针还可以用于实现抽象数据类型(ADT),如栈、队列等,这些ADT通过封装底层数据结构和操作来提供更高层次的抽象。这种间接访问的方式增加了程序的灵活性和表达能力,因为程序可以在运行时动态地改变指针的值,从而改变它所引用的数据。通过传递指针,函数可以直接修改传递给它的数据,而无需复制数据本身。综上所述,指针的抽象主要体现在它们如何允许程序直接与内存地址进行交互,并提供了一种高效和灵活的方式来操作数据。指针的抽象主要体现在它们如何允许程序直接与内存地址进行交互,同时提供了一种高效和灵活的方式来操作数据。
2024-08-29 22:12:42 248
原创 【编程知识】c++中的结构体和JavaScript中的对象有啥异同
在编程中,C++中的结构体(Struct)和JavaScript中的对象(Object)都用于封装数据和相关功能,但它们之间存在一些关键的异同点。这些差异主要源于它们各自语言的设计哲学和用途。
2024-08-29 18:34:53 537
原创 【c++】设计一个功能更强大的遍历数组的函数 printArrWith
printArrWith函数用来遍历一个数组,printArrWith方法以指定字符串作为分隔符,将所有数组成员连接为一个字符串并打印出来。如果不提供参数,默认用空格分隔
2024-08-28 22:32:55 354
原创 【c++】“数组界限”新定义快来看看吧
你看,“城市轨道交通车辆间隙”的定义,它强调的是列车在固定轨道上安全行驶所需的空间几何轮廓,这个定义既具体又抽象,既考虑了物理空间的实际需求,又蕴含了安全行驶这一重要前提。这两个定义都遵循了语文中下定义的通用方法,那就是先明确主体(列车、数组),再阐述其特定条件下的状态或行为(安全行驶所需的空间、安全访问的范围),最后通过精炼的语言将这一状态或行为固定下来,形成一个既准确又简洁的定义。这就是语文的魅力所在,它能跨越领域,用精准而富有逻辑的语言,给各种复杂的概念划定清晰的边界。
2024-08-28 20:45:42 287
原创 【c++】教你用两种方法生成一个“更加随机”的数字
我们平常上很多时候呢,很多地方我们都见过我们平常使用程序生成随机数的时候并不是真正意义上的随机数,他们使用的是一种的方式伪随机数是用确定性的算法计算出来自[0,1]均匀分布的序列。并不真正的随机,但具有类似于随机数的统计特征,如均匀性、独立性等。在计算伪随机数时,若使用的初值(种子)不变,那么伪随机数的数序也不变。伪随机数可以用计算机大量生成,在模拟研究中为了提高模拟效率,一般采用伪随机数代替真正的随机数。模拟中使用的一般是极长并能通过随机数检验的伪随机数,以保证计算结果的随机性。[1]
2024-08-28 20:45:20 438
原创 【c++】详细讲解三种初始化随机数种子方式的异同
在这三种方式中,实际上你只需要调用一次srand()并设置种子即可。多次调用srand()并在短时间内(如连续几行代码内)使用相同的时间值作为种子,将会导致rand()生成相同的随机数序列。通常情况下,推荐使用或更简洁的(如果time_t到的转换在你的环境中是安全的),因为它既清晰又简洁,同时避免了可能的类型转换问题。不过,请注意,如果你关心代码的可移植性,可能需要检查time_t和的大小是否兼容。
2024-08-28 18:53:55 538
原创 【c++】 如何写一个调式工具类来临时查看变量值
这个函数中设计了一个类Debugger,这个类提供了一个方法show,可以将一个变量打印在控制台,只要输入变量名就可以了,并且它可以自动匹配数据类型,通过重载匹配不同的参数。
2024-08-27 22:25:18 399
原创 【c++】用if-else语句模拟法律中对于“防卫行为”
您的程序逻辑很清晰地模拟了法律中关于假想防卫的处理方式,但为了更好地结合具体法律条文解答,我们可以依据一些通用的法律原则来详细分析。
2024-08-25 09:33:51 368
原创 【html】为啥看似简单的网页,样式设计却用了那么多行代码?
网页的简洁性和背后代码的复杂性之间往往存在一种看似矛盾却又相辅相成的关系。这主要体现在CSS(层叠样式表)对网页布局的精细控制上。下面我将从几个方面解释为什么一个简单的网页可能需要相对较多的CSS代码,并探讨这些代码的重要性。
2024-08-21 23:46:55 147
原创 【编程知识】如何有趣的理解变量的数据类型和数值
其实我们在创建变量的时候呢我们可以用法律来作比喻,把数据类型理解为“定罪”,变量的值具体为多少可以理解为“量刑”在编程的世界里,变量就像是个“小罪犯”,数据类型就是它的“罪名”,而变量的值呢,就像是它的“刑期”或者说是“罚款金额”。想象一下,你创建了一个整型变量,这就像是给这个小罪犯定了个“整数罪”。然后,你给这个变量赋了个值,比如100,这就好比是法院根据它的罪行,给出了100年的“刑期”。当然,这里的“刑期”只是比喻,实际上变量的值就是它存储的数据啦。
2024-08-20 22:51:17 356
原创 【html】颜色随机产生器(补充包)
但是这里我们发现,只能自己去生成一种颜色,但是很多时候我们设计一个网页没有灵感并不想利用现有的预设颜色这个时候我们就可以通过随机产生颜色的方式。因为很多人在设计网页的时候没有颜色的灵感这个时候我们我们就可以考虑通过随机产生一种颜色并且能够实时看到效果的网页。我们讲了如何制作一个通过滑动产色纯色背景的网页,今天,我们对那个网页进行一个补充,()我们可以考虑加一个随机产生的模块。
2024-08-17 17:03:17 929
原创 【c++】用c++写一个十六进制颜色随机产生器
来选择这些字符,这可能会导致越界访问(尽管在这个特定情况下不会,因为数组长度足够,但最好避免这种写法)。通常,我们更倾向于直接使用0到5的索引来访问这个数组。你的程序已经很好地实现了随机生成十六进制颜色代码的基本功能,但有一些小地方可以改进或注意。首先,你的程序逻辑是正确的,但我可以帮你优化一些细节,比如避免使用。大家在设计网页时有没有不知道用啥颜色,词汇量太少不知道有啥颜色单词?只可能返回0或1),并且确保生成的十六进制字符在有效的范围内。数组实际上包含了ASCII码表示的小写字母a到f,但在。
2024-08-17 14:51:04 406
原创 【开发语言】编译型语言和解释性语言有啥区别?
编译型语言和解释型语言各有优缺点,选择哪种类型的语言取决于具体的应用场景和开发需求。在需要高性能和安全性较高的场合,编译型语言可能是更好的选择;而在需要快速开发和跨平台部署的场合,解释型语言则更具优势。
2024-08-17 08:35:37 564
原创 【c++】怎么通过C++类模仿JavaScript中的undefined
在JavaScript中,undefined是一个特殊的值,用来表示变量已经被声明但还没有被赋值。它是所有JavaScript对象的原型链的终点之一。undefined是一个原始数据类型的值,只有一个:undefined。在JavaScript中,如果你尝试访问一个未被声明的变量,或者已声明但没有赋值的变量,你会得到undefined值。
2024-08-15 09:41:25 767
原创 【c++】 C++创意玩法模拟JavaScript的数组方法indexOf
方法则通过遍历数组来查找指定的元素,并返回它的索引。总的来说,你的程序写得非常清晰、简洁,并且很好地模拟了JavaScript的indexOf方法。关键字在堆上分配了足够的内存来存储这些元素,并通过一个循环复制了数组的内容。由于数字2是数组中的第二个元素(索引为1),所以程序输出1是正确的。方法能够正确地遍历整个数组,并返回指定元素的索引,如果未找到该元素,则返回-1。类就更加符合期望的行为,并且能够更好地模拟JavaScript中的数组方法。在这个修改后的版本中,我移除了构造函数中不必要的检查。
2024-08-14 22:04:08 247
原创 【科普世界】“银针验毒”可信吗?有没有科学依据?
但 实际上只有鸡蛋和皂化水会变色(银针),,鸡蛋和硫磺皂之所以遇到银针变黑了是因为它们两个里面的硫和银发生反应了,变成了黑色的硫化银,实际上银针“根本测不出毒 ”, 那为什么古代会有银针验毒的说法呢其实在古代银针验毒主要检验的是砒霜 ,它的学名是三氧化二砷 ,但古代的技术有限再提取砒霜的时候会有少量的硫残留 ,这就恰好变黑了,但是当银针遇到几乎不含硫的毒物 测不出来 ,所以银针验毒只是“一个不科学的巧合罢了 ”这些硫元素在遇到银针时,会迅速与其发生反应,生成黑色的硫化银,从而使银针变黑。
2024-08-14 17:54:30 188
原创 【开发语言】面向对象和面向过程开发思路的区别
面向过程和面向对象是两种不同的编程范式,它们有着各自的优势和适用场景。面向过程适合解决相对简单、直接的问题,而面向对象则更适合处理复杂、多变且需要高度可重用性的系统。在实际开发中,可以根据项目的具体需求和团队的技术栈选择合适的范式或结合使用两种范式。
2024-08-14 11:14:13 311
原创 【c++】通过Privilege类来保护数据
我设计了一个类Privilege类来保护数据,它有效地通过控制访问性和可修改性来保护数据。不过,有几个小地方可以改进或注意,以确保代码的健壮性和易用性。
2024-08-13 22:24:13 585
原创 【c++】公差判断函数 isInTolerance
函数用来判断一个特定数值(变量)是否在以某个中心值为基准,给定半径的范围内。这个函数包含了一个可选的参数 includeEndpoints(默认为 true),用于决定范围是否包含其端点值。
2024-08-12 16:14:10 220
原创 【JavaScript】JavaScript里的“先斩后奏”之王 shift()方法
JavaScript中 shift 方法用于删除数组的第一个元素,并返回该元素。注意,该方法会改变原数组!
2024-08-12 14:33:23 315
原创 【c++】如何用c++创建一个全新的类型“列表”?
您提到的原理与编辑文档时的撤销操作非常相似,确实体现了一种“后进先出”(FILO,但实际上更常用的是FIFO,即“先进先出”,但在撤销操作的上下文中,FILO更为贴切)的策略。在撤销操作的上下文中,使用FILO策略是合理的,因为它反映了用户操作的自然顺序:用户最近执行的操作最有可能是他们想要撤销的。其实我觉得删除并不需要真正意义上的把它销毁掉,只需要原来的数组索引访问不到它就行了,另外目前pop只能删除最后一个添加的元素(尾端删除),不能删除中间的元素,虽然说这个有局限性,但是它可以避免大量。
2024-08-11 21:45:39 514
原创 【css】网格布局重要的6个属性
就是:“屏幕大就多放几个格子,屏幕小就少放几个,但每个格子最小不能小于255px,灵活应变,无所不能。就是告诉浏览器:“这边来点弹性空间,那边固定200px,再那边又是弹性空间,随意搭配,自由组合。就是:“我要从第一行跨到第三行,还要从第一列跨到第三列,我就是这么霸气侧漏,无人能挡!怎么样,这样解释是不是既生动又有趣?:这个就像你一个人在豪华大包厢里吃饭,整个空间都是你的,没人跟你挤。:想象一下,你和你的好基友(或者好闺蜜)手拉手坐在长椅上,一人一半。:这个就像是自助餐,你想吃多少吃多少,想吃什么吃什么。
2024-08-10 22:38:31 372
原创 【前端】如何设计网页才能最直接的吸引用户?
我觉得我们设计一个网页给用户的直观感受(静态样式>动态样式(动画 比如说鼠标经过的时候的样式和一些特殊的transform设计 )>响应式布局>具体功能)它揭示了网页设计中不同元素对用户直观感受的层次性影响。虽然这种排序可能不是绝对的,因为它取决于具体的网页目标、用户群体以及设计目标,但确实在一定程度上反映了用户在与网页交互时可能经历的感知过程。: 静态样式是网页设计的基石,它决定了网页的整体布局、颜色搭配、字体选择等。良好的静态样式设计能够立即吸引用户的注意力,并传达出网页的主题和氛围。
2024-08-09 10:28:52 865
原创 【JavaScript】数组四大方法命名 得push pop shift unshift的原因 和功能
这四个方法的名字确实不是直接从功能描述中直接得出的,但它们通过隐喻和类比的方式,传达了元素在数组中的添加和移除操作。这种命名方式在编程中并不罕见,它允许开发者通过简短而富有表现力的名字来快速理解和记忆方法的功能。随着你对JavaScript的进一步学习,你会逐渐习惯这种命名方式,并发现它们其实是非常直观和有用的。同时,你也可以通过编写自己的函数和库来尝试使用类似的命名策略,以提高代码的可读性和易用性。这四个方法的名字初看起来可能并不直观地与它们的功能完全对应,但这背后其实有着一些历史和约定俗成的命名习惯。
2024-08-08 23:16:59 186
原创 【冷知识】现在到底是病毒厉害一点还是防御厉害一点?
其实我觉得病毒和“反病毒”(防御机制)实在发展的过程当中互相促进(即使这不是人们想要的),一个逼着另一个的发展,所以理论上不存在绝对厉害万能的病毒,也不存在绝对安全的防御机制。只有更厉害的对手。在信息安全领域,病毒(或更广义地说,恶意软件)与防御机制(包括反病毒软件、防火墙、安全协议等)之间确实存在着一种相互促进的发展关系。这种关系类似于军备竞赛,一方(病毒/恶意软件)不断进化以绕过现有的防御,而另一方(防御机制)则不断提升以应对新的威胁。
2024-08-08 22:31:20 187
枪声模拟器(easyx)
2024-02-20
用C语言写一个五子棋游戏(人机)
2024-02-20
easyx模板 想插图片,音乐不会插?每次写代码太麻烦?给大家写了一个模板,希望大家喜欢
2024-02-07
万众瞩目的“统计学计算器《数字之韵》”终于来了 C语言
2024-01-10
Windows文件抓取工具(C语言)
2024-01-03
如何用C语言加上easyx做出一个高逼格的迷宫游戏
2023-12-25
教你用C语言写一个鼠标信息检测工具 包含easyx图形库
2023-12-24
快速创建指定个数的文件
2023-12-23
在文件夹下快速创建多个txt
2023-12-23
大屏烟花 C语言 含 easyx
2023-12-23
C语言 黑客 彩色数字雨 独立窗口
2023-12-21
五子棋双人对战 含窗口 可通过鼠标点击
2023-12-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人