题目:五子棋对弈对弈规则如下:主要功能是实现两人之间的对弈,在画好的棋盘上,两个玩家轮流选择自己的落子坐标,然后由五子棋系统自动识别判断游戏的进展,知道一方的五子连成一条线或者棋盘已经无法落子时游戏结束。
选定五子棋的棋盘大小为19*19,玩家可以在这个棋盘上选择落子坐标位置,通过在棋盘上显示不同的符号来代替不同玩家所下的棋子,“o”代表A玩家,“*”代表B玩家。
玩家每次落子之后游戏系统都会对落子位置进行检查,如果落子坐标输入有错应提示错误,并要求玩家继续输入。
当出现同一玩家五子连成一线时,无论是行、列或是对角线的五子连线,都表示玩家游戏胜利,退出游戏任务:编程实现以下功能1.欢迎主界面提示玩家选择游戏开始,结束,设置悔棋次数等。
2.绘制棋盘该模块要求的功能是实现棋盘的显示及棋子的显示,,“o”代表A玩家,“*”代表B玩家。
在每次下棋后要对棋盘进行刷新,将棋盘的状态变化为当前最新状态,然后等待另一个玩家下棋。
3.玩家交替下棋玩家能在棋盘上下棋,玩家每次选择好下棋的行和列坐标,并在该位置落子。
要求:a.提示当前玩家输入落子坐标b.能判断用户输入的坐标是否正确(坐标超出范围或该处已有棋子)4.悔棋功能玩家选择悔棋后刷新棋盘,删除前一次的落子,悔棋次数有限制。
5.输赢判断判断输赢模块的作用是每次玩家落子后判断是否已分出胜负,如果是,则返回胜利者相关信息。
6.设计丰富的用户界面,方便用户操作设计要求:①根据以上功能需求,自己定义合适的数据结构,并说明原因;
②每个功能能提供友好的用户界面,方便用户操作。
2023/8/4 2:24:35 6.04MB 五子棋 C语言 可悔棋 坐标
1
作者:胡彦本框架是一个lex/yacc完整的示例,用于学习lex/yacc程序基本的搭建方法,在linux/cygwin下敲入make就可以编译和执行。
本例子虽小却演示了lex/yacc程序最常见和重要的特征:*lex/yacc文件格式、程序结构。
*如何在lex/yacc中使用C++和STL库,用extern"C"声明那些lex/yacc生成的、要链接的C函数,如yylex(),yywrap(),yyerror()。
*重定义YYSTYPE/yylval为复杂类型。
*用%token方式声明yacc记号。
*用%type方式声明非终结符的类型。
*lex里正则表达式的定义、识别方式。
*lex里用yylval向yacc返回属性值。
*在yacc嵌入的C代码动作里,对记号属性($1,$2等)、和非终结符属性($$)的正确引用方法。
*对yyin/yyout重赋值,以改变yacc默认的输入/输出目标。
*如何开始解析(yyparse函数),结束或继续解析(yywrap函数)。
本例子功能是,对当前目录下的file.txt文件,解析出其中的标识符、数字、其它符号,显示在屏幕上。
linux调试环境是Ubuntu10.04。
总之,大部分框架已经搭好了,你只要稍加扩展就可以成为一个计算器之类的程序,用于《编译原理》的课程设计。
文件列表:lex.l:lex程序文件。
yacc.y:yacc程序文件。
main.hpp:共同使用的头文件。
Makefile:makefile文件。
file.txt:给程序解析的文本文件。
使用方法:1-把lex_yacc_example.rar解压到linux/cygwin下。
2-命令行进入lex_yacc_example目录。
3-敲入make,这时会自动执行以下操作:(1)自动调用flex编译.l文件,生成lex.yy.c文件。
(2)自动调用bison编译.y文件,生成yacc.tab.c和yacc.tab.h文件。
(3)自动调用g++编译、链接出可执行文件main。
(4)自动执行main,得到如下结果:。
bison-dyacc.yg++-clex.yy.cg++-cyacc.tab.cg++lex.yy.oyacc.tab.o-omainid:abcid:defghiint:123int:45678op:!op:@op:#op:$AllId:abcdefghi参考资料:《Lex和Yacc从入门到精通(6)-解析C-C++包含文件》,http://blog.csdn.net/pandaxcl/article/details/1321552其它文章和代码请留意我的blog:http://blog.csdn.net/huyansoft2013-4-27
1
涵盖基本常用的proteus元件仿真符号
2023/7/23 20:41:58 34KB proteus仿真
1
glib-2.58.0-win64-vs2017-v141-sdk10.0.17134.12csdn-tags:glib-2.58.0x64vs2017v141sdk17134glib-2.58.0及其依赖包:bzip2-1.0.6-win64-vc141.zipglib-2.58.0-win64-vc141.ziplibiconv-1.15-win64-vc141.ziplibintl-0.19.8.1-win64-vc141.zippcre-8.42-win64-vc141.zipzlib1-1.2.11-win64-vc141.zip其中:glib依赖libintlpcrezlibintl依赖libiconvpcre依赖bzip2zlibglib的编译方法:1,准备工具:msvc2017,python3,python需要安装meson和ninja,直接pipinstall即可。
2,准备glib:glib需要dirent的支持,否则在编译时会提示无法解析外部符号的错误。
解决方法为:将根目录\build\win32\dirent目录下的二个C文件和一个H文件拷贝到根目录\glib目录下。
3,修改根目录\glib目录下的meson.build文件,字符全是英文半角:glib_sub_headers=files处添加:glib_sub_headers=files('dirent.h',glib_sources=files处添加:glib_sources=files('dirent.c','wdirent.c',打开vs2017的:适用于VS2017的X64本机工具命令提示:或者call"C:\ProgramFiles(x86)\MicrosoftVisualStudio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat"amd64假设python安装在D:\platform\python3则,Scripts目录一定要添加,否则meson.py会找不到:setPYTHONPATH=D:\platform\python3setPATH=%PATH%;%PYTHONPATH%;%PYTHONPATH%\Scripts\然后,创建编译目录,meson用一个新的目录编译源码:mkdirglib-2.58.0-win64-vc141cdglib-2.58.0-win64-vc141meson.py..\glib-2.58.0--prefix=D:\platform\glib--buildtype=minsizeninjaninjainstall就可以完美编译。
欢迎朋友们下载使用。
2023/7/21 15:49:14 9.76MB glib-2.58.0 vs2017v141 sdk17134
1
AMESim表示工程系统仿真高级建模环境(AdvancedModelingEnvironmentforperformingSimulationsofengineeringsystems).基于直接图形接口,在整个仿真过程中系统可以显示在环境中。
AMESim使用图标符号代表各种系统的元件,这些图标符号要么是国际标准组织如工程领域的ISO为液压元部件确定的标准符号,或为控制系统确定的方块图符号,或者当不存在这样的标准符号时可以为该系统给出一个容易接受的非标准图形特征。
2023/7/20 19:29:30 14.2MB AMESim,液压
1
设计16键盘简易计算器,实现以下功能。
1、4*4键盘输入,用按键输入数和运算符号。
1 2 3 +4 5 6 -7 8 9 *C 0 = ∕2、数码管显示运算过程和结果(十进制数),负号用一个LED灯显示。
3、具有清零和复位功能。
4、具有连续运算功能。
5、具有简易报错和提示功能。
2023/7/20 7:33:24 711KB 简易计算器项目
1
介绍19种典型强度调制方式的符号结构,推导它们在高斯信道、弱湍流信道、中强湍流信道中的误时隙率(SER)模型,并进行了数值仿真。
仿真结果表明:随着信噪比不断增大,各调制方式的SER持续减小并逐渐趋于一致,当SER趋于一致时,对信噪比的要求随湍流强度的增大而增高。
脉冲位置调制(PPM)在三种信道中的SER均为最小;调制阶数较小时,差分幅度PPM的SER最大,调制阶数较大时,开关键控(OOK)的SER最大。
其余调制方式的SER介于OOK、PPM与差分幅度PPM之间,并随着调制阶数的增大出现分层现象。
研究结果对实际激光通信系统的设计具有一定参考价值。
2023/7/18 16:52:28 16.31MB 光通信 强度调制 自由空间 直接检测
1
全套原生苹果IOS系统表情包,PNG格式,解压后使用,包括以下内容:01.表情符号与人物02.动物与自然03.食物与饮料04.活动05.旅行与地点06.物品07.符号08.旗帜可用于各类LOGO或图标
2023/7/14 8:18:13 11.65MB 表情
1
JAVA语言。
暴力破解,4位ASCII码符号(包括数字字母符号)组成的明文。
内含字典生成代码。
2023/7/12 15:22:21 25KB sha256 java
1
压缩包包含中英文版的pdf文件和源代码需要符号文件可以到书中指定位置下载
2023/7/9 2:20:55 54.04MB Windows 高级调试
1
共 557 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡