程序调试(除错)过程中的一些雕虫小技
天津大学智慧树知到“计算机科学与技术”《网页设计与制作》网课测试题答案3

天津大学智慧树知到“计算机科学与技术”《网页设计与制作》网课测试题答案(图片大小可自由调整)第1卷一.综合考核(共15题)1.网站创意思考的过程分五个阶段,将资料咀嚼消化,使意识自由发挥,任意组合为()。
A、准备期B、孵化期C、启示期D、验证期E、形成期2.常用事件on Mouse Over是指()。
A、当鼠标移出了指定元素的范围时,在该页面元素上触发的事件B、当鼠标移入了指定元素的范围时,就会触发的事件3.下列()不是文本域的类型。
A、单行文本B、多行文本C、菜单D、密码4.彩色系中纯度最高的是()。
A、紫B、红C、黄D、蓝5.Flash中()语句可以跳到动画中另一个指定的帧或场景。
A、go toB、get URLC、Start Drag Movie ClipD、Fscommand 6.Fireworks中使用直线工具的同时按住Shift键,能绘制出()。
A、45°直线B、弧线C、30°直线D、60°直线7.在Flash中选择()声音播放方式后,不受时间轴的影响,声音一直播放完。
A、事件B、开始C、停止D、流型8.Dreamweaver中模板文件的扩展名为()。
A、.docB、.psdC、.flaD、.dwt9.Fireworks中字距表示字符与字符之间的松紧程度,默认值为()。
A、100%B、0C、1%D、99%10.设计中的创造性思维具体体现在()。
A、思维方向的求异性、思维进程的跨越性B、思维效果的整体性、思维结构的灵活性C、思维表达的流畅性D、以上说法都正确11.Flash中使用()可以对图像进行选定和拖拽,还可以放大、缩小或变形。
A、套索工具B、箭头工具C、铅笔工具D、笔刷工具12.以下描述的是()事件:当图像或页面被完全载入后,就会触发该事件。
A、on loadB、on ErrorC、on key upD、on Mouse Down13.Fireworks工具箱中,如果工具按钮上有一个三角符号则()。
五年级下册Scratch题库

五年级下册Scratch题库一、填空题(10道):1.scratch是一款编程语言,它与所有的编程语言一样,可以用来编写应用程序。
2.Scratch的图标是一只可爱的小猫,跟着这只小猫可以创作出交互故事、动画、游戏、音乐等令人惊叹的作品。
3.想要保存舞台上的效果图我们可以:在舞台上右击,“将舞台存成图片”4.将声音转换为图画的过程叫做:声音的可视化。
5.Scratch提供播放声音、演奏音符和敲鼓三种音乐输出形式,具备丰富的乐器类型、完整的音符序列。
6.趣故事的创作需要新建“人物、地点和事件”三个链表。
7.电影是综合了美术、音乐、戏剧的综合艺术形式,我们可以通过编写程序,集编剧、导演、演员、美工于一身。
8.可以用显示、隐藏指令模块控制每个角色的出场时间。
9.使用“单步执行”来调试和理解代码。
10.软件的三级目标:初级目标,中级目标,高级目标。
二、选择题:(13道)1.scratch是一款(C)A.文字编辑软件B.图像编辑软件C.编程语言D.音乐处理2.用scratch保存的文件默认的图标是一只(B )A.可爱的小狗B.可爱的小猫C.漂亮的蝴蝶D.可爱的小孩3.新建角色按钮有三种以下不是新增角色按钮的是(D )A.绘制B.导入C.随机D.拖动4.舞台的中心点坐标为(C )A.-240,240B.-180,180C.0,0D.180,2405.将声音转换为图画的过程有个好听的名字,叫做(B )A.音画时尚B.声音的可视化C.色辨成音D.音乐的转换6.将颜色转换为声音的过程,在scratch里我们叫做(C )。
A.音画时尚B.声音的可视化C.色辨成音D.音乐的转换7.奇趣故事的创作需要新建“人物、地点和( D )三个链表。
A.语言B.动作C.表情D.事件8.电影是综合了美术、音乐、戏剧的综合艺术形式,我们可以通过编写(A),集编剧、导演、演员、美工于一身。
A.程序B.语言C.故事D.音乐9.可以用显示和(C)指令模块控制每个角色的出场时间。
按键精灵一级考试答案

按键精灵一级考试答案一、单选题(每题2分,共10题,满分20分)1. 按键精灵中,以下哪个选项是正确的脚本保存路径?A. C:\Program Files\按键精灵\ScriptsB. C:\Users\Public\Documents\按键精灵\ScriptsC. C:\Users\Public\Documents\按键精灵\ScriptD. C:\Program Files\按键精灵\Script答案:B2. 在按键精灵中,以下哪个函数用于获取当前窗口的标题?A. GetWindowTextB. GetWindowHandleC. GetWindowTextExD. GetWindowTitle答案:A3. 按键精灵中,如何实现循环等待直到满足某个条件?A. WhileB. ForC. DoD. Loop答案:A4. 在按键精灵中,以下哪个命令用于模拟鼠标左键单击?A. MouseLeftClickB. MouseRightClickC. MouseMiddleClickD. MouseDoubleClick答案:A5. 按键精灵中,以下哪个选项表示按键精灵的主程序?A. KeyScript.exeB. KeyMacro.exeC. KeyMaster.exeD. KeyGenius.exe答案:A6. 在按键精灵中,如何获取当前系统时间?A. GetSystemTimeB. GetSysTimeC. GetTimeD. GetDateTime答案:D7. 按键精灵中,以下哪个选项是正确的脚本运行方式?A. 手动运行B. 自动运行C. 定时运行D. 以上都是答案:D8. 在按键精灵中,以下哪个函数用于获取屏幕分辨率?A. GetScreenResolutionB. GetScreenSizeC. GetResolutionD. GetScreenResolutionEx答案:B9. 按键精灵中,如何实现脚本的暂停功能?A. PauseB. SleepC. WaitD. Suspend答案:B10. 在按键精灵中,以下哪个命令用于模拟键盘输入?A. KeyInputB. KeyPressC. KeyDownD. KeyUp答案:A二、多选题(每题3分,共5题,满分15分)1. 按键精灵中,以下哪些选项是脚本调试时常用的调试命令?A. BreakB. ContinueC. StepOverD. StepInto答案:A, C, D2. 在按键精灵中,以下哪些函数用于获取窗口信息?A. GetWindowHandleB. GetWindowTextC. GetWindowRectD. GetWindowProcessID答案:A, B, C, D3. 按键精灵中,以下哪些选项是正确的脚本保存格式?A. .kseB. .ksC. .kscD. .ksp答案:A, B4. 在按键精灵中,以下哪些命令用于模拟键盘按键?A. KeyDownB. KeyUpC. KeyPressD. KeyInput答案:A, B, C5. 按键精灵中,以下哪些选项是正确的脚本运行方式?A. 手动运行B. 自动运行C. 定时运行D. 条件运行答案:A, B, C三、判断题(每题1分,共5题,满分5分)1. 按键精灵支持多线程运行脚本。
sccratch 考级题目

假设“sccratch”是一个虚构的编程或技能考级相关主题,以下是根据这一设定创建的8道选择题:
1、在sccratch编程环境中,以下哪个工具用于创建和编辑代码块?
A、舞台区
B、代码块区
C、角色库
D、背景设置
(答案)B
2、sccratch考级中,以下哪个概念不是用来描述程序控制流程的?
A、循环
B、条件判断
C、变量声明
D、事件触发
(答案)C
3、在sccratch项目中,想要让一个角色移动到舞台的特定位置,应该使用哪种类型的代码块?
A、外观代码块
B、运动代码块
C、声音代码块
D、事件代码块
(答案)B
4、sccratch考级中,以下哪个功能不是用于调试程序的?
A、实时运行
B、代码块高亮
C、错误提示
D、代码块隐藏
(答案)D
5、在sccratch编程中,如果想要让一个角色在点击时发出声音,应该使用哪种类型的触发条件?
A、时间触发
B、键盘触发
C、鼠标点击触发
D、碰撞触发
(答案)C
6、sccratch考级中,以下哪个概念与“重复执行某段代码”相关?
A、条件分支
B、循环结构
C、变量赋值
D、函数定义
(答案)B
7、在sccratch项目中,如果想要设置一个角色的初始位置,应该在哪个区域进行设置?
A、代码块区
B、数据区
C、舞台区
D、属性区
(答案)D
8、sccratch考级中,以下哪个工具或功能不是用来增强程序交互性的?
A、传感器输入
B、用户界面按钮
C、背景音乐播放
D、角色间消息传递
(答案)C。
大连理工版小学信息技术五年级下册《捕鼠大作战》同步练习题附知识点归纳

大连理工版小学信息技术五年级下册《捕鼠大作战》同步练习题附知识点归纳一、课文知识点归纳:1. 编程基础概念:(1)指令:计算机执行的基本操作。
(2)循环:重复执行某段代码,直至满足某个条件。
(3)条件判断:根据特定条件执行不同的代码块。
2. 游戏设计:(1)角色设定:定义游戏中角色的属性、外观和行为。
(2)游戏规则设定:制定游戏的胜利条件、失败条件及得分机制。
(3)游戏界面设计:设计游戏的布局、背景、交互元素等。
3. 逻辑思维:(1)解决问题:通过编程实现游戏逻辑,解决复杂问题。
(2)调试与优化:对程序进行调试,发现并修正错误,优化程序性能。
4. Scratch编程实践:(1)Scratch积木功能:利用Scratch软件中的积木块,快速构建游戏逻辑。
(2)角色与背景创作:使用Scratch的绘图工具或导入素材,创作游戏角色和背景。
(3)事件与运动控制:通过事件触发角色的动作,控制角色的移动和交互。
二、同步练习题。
(一)、填空题。
1. 在“捕鼠大作战”游戏中,捕鼠者需要设置自己的移动规则,同时还需要设置__________的移动规则。
2. 在编程时,我们可以使用__________语句来设定游戏的胜利条件。
3. 如果程序运行结果不符合预期,我们应该__________,而不是直接重新运行。
(二)、选择题。
1. 在编程中,用于重复执行某段代码的结构是()A. 顺序结构B. 循环结构C. 条件结构D. 嵌套结构2. 在“捕鼠大作战”游戏中,当捕鼠者碰到老鼠时,我们可以使用哪个命令来让老鼠消失?()A. 隐藏命令B. 移动命令C. 旋转命令D. 复制命令3. 在Scratch编程中,要让角色跟随鼠标移动,我们应该使用哪个模块的功能?()A. 数字和逻辑运算B. 侦测C. 外观D. 控制(三)、判断题。
(正确的打“√”,错误的打“×”)1. 在“捕鼠大作战”游戏中,设置老鼠的移动规则比设置捕鼠者的移动规则更重要。
计算机维修工五级练习题及参考答案

计算机维修工五级练习题及参考答案一、单选题(共87题,每题1分,共87分)1.运算器和控制器的总称是______。
A、CPUB、ALUC、集成器D、逻辑器正确答案:A2.微型计算机键盘上的Shift键,汉语译为______。
A、换档键B、退格键C、回车换行键D、空格键正确答案:A3.在计算机的存储单元中存储的______。
A、可以是数据或指令B、只能是字符C、只能是数据D、只能是指令正确答案:A4.不是输入设备。
A、绘图仪B、键盘C、鼠标D、扫描仪正确答案:A5.以下不可以作为显示接口的是A、VGA、B、HDMID、ATX正确答案:D6.不是CPU的主要技术指标。
A、缓存B、制造工艺C、多媒体指令集D、内存容量正确答案:C7.打印机是一种A、控制设备B、输出设备C、运算设备D、输入设备正确答案:B8.购买计算机时, 不是确定用户需求应遵循的原则。
A、价格越贵越好B、替用户着想C、尊重用户的意见D、适当考虑未来正确答案:A9.计算机网络最突出的优势是A、信息流通B、资源共享C、数据传送D、降低费用正确答案:B10.一般用于数码像机、数码摄像机、测量仪器及移动硬盘等设备的接口是( )。
A、VGA、C、DIVD、Mini-USB正确答案:D11.Windows 7系统中,通过"鼠标”属性对话框,不能调整鼠标的。
A、指针轨迹B、双击速度C、单击速度D、移动速度正确答案:C12.世界上第一台电子计算机诞生于A、1949年B、1941年C、1946年D、1950年正确答案:C13.硬盘中的盘片每分钟旋转速度称为硬盘的转速,单位是A、HzB、r/minC、msD、bps正确答案:B14.指令的操作码表示的是_____。
A、操作位置B、停止操作C、做什么操作D、操作结果正确答案:C15.在Word中,不属于段落格式设置的是 ( )A、居中B、字符间距C、首行缩进D、两端对齐正确答案:C16.硬盘的主要性能参数平均寻道时间是以( )为单位。
程序设计中的错误处理与调试技巧
程序设计中的错误处理与调试技巧在程序设计过程中,遇到错误和 bug 是常有的事情。
为了能够高效地排查和修复这些问题,程序员需要掌握一些错误处理和调试技巧。
本文将介绍几种常见的错误处理与调试技巧,帮助程序员更好地应对这些问题。
一、错误处理技巧1. 异常处理异常处理是一种常见的错误处理技巧,通过捕获异常并采取相应的措施来处理错误。
在程序中,我们可以使用 try-catch 块来捕获异常,并在 catch 块中处理异常情况。
通过合理设置异常处理机制,可以避免程序因异常而崩溃或产生不可预料的结果。
2. 错误码与错误信息在程序设计中,可以使用错误码与错误信息来标识和描述错误。
当程序出现错误时,通过返回错误码或错误信息,可以帮助程序员更快地定位和修复错误。
同时,在用户界面中显示明确的错误信息,也有助于用户了解错误原因和解决方案。
3. 日志记录日志记录是一种重要的错误处理技巧。
程序员可以通过记录程序中的关键信息、错误信息和运行日志,来追踪问题、定位错误,甚至进行性能分析。
合理使用日志记录功能,可以帮助程序员更好地了解程序的运行情况,及时发现和排查问题。
二、调试技巧1. 断点调试断点调试是一种常用的调试技巧,通过在程序代码中设置断点,在程序运行到断点处时暂停执行,可以逐步查看程序的执行过程、变量的取值等信息。
通过断点调试,程序员可以追踪代码的执行流程,找出错误所在,辅助进行程序的修复。
2. 打印调试信息在程序设计过程中,可以通过打印调试信息来帮助程序员了解程序的运行情况。
在关键的代码片段中,添加打印语句输出相关变量和中间结果,可以帮助程序员更直观地观察程序的行为和数据变化情况,从而快速定位错误。
3. 调试工具除了常规的调试技巧外,还有一些调试工具可以帮助程序员进行更高效的调试工作。
例如,代码覆盖率工具可以帮助程序员了解代码的覆盖情况,帮助发现未执行到的代码块;内存调试工具可以帮助程序员检测内存泄漏和内存溢出等问题。
青岛版小学信息技术五年级上册《初识Scratch》同步练习题附知识点归纳
青岛版小学信息技术五年级上册《初识Scratch》同步练习题附知识点归纳一、课文知识点归纳:1. Scratch的基本概念和用途。
2. Scratch软件界面的组成和各部分的功能。
3. Scratch中角色的创建、造型切换和脚本编写。
4. Scratch中动画、音乐和游戏制作的基本步骤和方法。
二、同步练习题。
(一)、填空题。
1. Scratch是一款由美国_______理工学院设计开发的_______化编程软件。
2. Scratch窗口的组成部分包括菜单栏、控制区、_______、脚本区、_______和舞台区等。
(二)、选择题。
1. Scratch中的角色可以通过以下哪个指令切换造型?()A. 将角色的大小增加10B. 当作为克隆体启动时C. 下一个造型2. Scratch软件保存时,一般建议的扩展名是:()A. TXTB. EXECC. SB23. Scratch的默认角色是:()A. 一只小鸟B. 一只小猫C. 一只小狗(三)、判断题。
(正确的打“√”,错误的打“×”)1. Scratch的指令区包含动作、事件、外观、控制等多个程序指令。
()2. Scratch的舞台背景不可以更改。
()3. 在Scratch中,可以通过拖动指令块的方式来编写程序。
()(四)、简单题。
1. 简述Scratch的主要用途是什么?__________________________________________________________________ __________________________________________________________________ __________________________________________________________________ 2.描述一下你使用Scratch制作一个简单的动画作品的步骤。
__________________________________________________________________ __________________________________________________________________ __________________________________________________________________三、学习目标1. 了解Scratch的基本知识和用途。
2020苏教版小学五年级信息技术期末考查(下册)--scratch答案--16k--2p
五年级信息技术期末考查班别:姓名:成绩:一、单选题(20分,每题2分)1、Scratch 是一款(A ),它与所有的编程语言一样,可以用来编应用程序。
A、程序设计软件B、画图软件C、游戏软件2、Scratch的工作界面主要由功能菜单、控件区、角色区、(A )及等几部分组成。
A、脚本区、舞台区、控制区B、编辑区、操作区C、放大、缩小3、Scratch中编写脚本时经常与“当绿旗被点击”组合使用的控件是(B )A、结束、重复执行C、移动10步4、Scratch C )。
A、允许旋转B、只允许左右翻转C、不允许旋翻转5、要控制小狗向上移动10步,命令是(C )。
A、移动10步B、面向180度,移动10步C、面向上方向,移动10步。
6、要让小猫随机产生许多数字,必须要先使用(A )命令。
A、变量B、在1-10之间的随机选一个数C、印章7、Scratch软件提供了(C )类共100多个不同的控件。
A、5B、6C、88、Scratch中的默认角色是一只可爱的(B )。
A、小狗B、小猫C、小鸟9、绘图编辑器由工具栏、颜料盒、和(A )组成。
A、画图区B、控件区C、脚本区10、为了让小丑表演不同的动作,必须要在(C )中导入其他几个造型。
A、角色B、背景C、造型二、多选题(20分,每题4分)1、“画笔”是控件区的一组模块,分为(ABCD )等指令,用于显示或隐藏角色运行的足迹。
A、落笔B、画笔颜色C、大小、色调D、图章、清除画笔2、Scratch的编程界面简单、方便,易于学习;Arduino的硬件(ABC )。
A、价格便宜B、扩展性好C、使用面广D、不易损坏3、Arduino板是一块开源的主板,使用者可以自由搭接各类(ABCD ),我们可以更方便地创造个性化的数字生活用品。
A、传感器B、马达C、灯泡、喇叭D、家用电器、手机4、滑动电位传感器通常由(AB )组成,通过移动滑块可以得到不同的电阻值。
A、电阻体B、可移动的电刷C、天线D、线圈5、关于S4A程序描述正确的选项有(ABCD )。
新浪·按键精灵开发者二级认证参考答案2016综述
按键精灵开发者二级认证参考答案1、WaitKey命令有几个参数?正确答案:02、颜色值为"FFFFFF"是什么颜色?正确答案:白色3、鼠标左键弹起的命令是?正确答案:LeftUp4、按键码53是下列哪一个按键?正确答案:55、Delay命令有几个参数?正确答案:16、延迟1天,以下哪一句代码是正确的? 正确答案:Delay 1000*60*60*24*17、下列哪一个命令会暂停脚本?正确答案:WaitClick8、EndScript命令的意义是?正确答案:脚本停止运行9、判断条件应该使用下列哪个语句?正确答案:If语句10、按键精灵找图命令需要的图片格式是下列哪一个?正确答案:*.BMP11、以下哪一个不属于按键精灵的"全部命令"?正确答案:远程嗅探命令12、鼠标所在位置为(100,50),经过命令 MoveToS 50+50,100 后鼠标所在位置为?正确答案:100,10013、不能正确调用KeyPress命令的写法是?正确答案:KeyPress "FB",1正确答案:RightClick15、组合键"CTRL+C"的正确按键顺序是?正确答案:按下"CTRL",点击"C",弹起"CTRL"16、"F10"的按键码是?正确答案:12117、以下哪一个命令能够延时1个小时?正确答案:delay 1000*60*6018、下列RGB颜色值,书写正确的是?正确答案:"DD"20、区域找图的命令是?正确答案:FindPic21、循环可以使用下列哪个语句?正确答案:For语句22、附件中哪一种文件可以不经过释放直接使用? 正确答案:BMP23、以下哪一个写法不能点击"shift"键?正确答案:KeyPress 60, 124、取指定点颜色的命令是?正确答案:GetPixelColor25、锁定鼠标位置是下列哪一个命令?正确答案:LockMouse26、延迟3分钟,以下哪一句代码是正确的?正确答案:Delay 1000*60*327、鼠标右键弹起的命令是?正确答案:RightUp28、脚本停止运行命令是哪一个?正确答案:EndScript正确答案:LeftDoubleClick30、解除鼠标锁定是下列哪一个命令?正确答案:UnlockMouse31、键盘按下的命令是?正确答案:KeyDown32、以下哪一个不属于按键精灵基本命令?正确答案:压缩命令33、下列哪一个是鼠标命令?正确答案:LeftClick34、鼠标所在位置为(50,50),经过命令 MoveTo 50,100 后鼠标所在位置为:正确答案:50,10035、以下哪一个是自动补血的思路?正确答案:检测血条上某一点,如果此点不是血条的颜色则执行加血操作36、下面哪一个是循环命令?正确答案:Do...Loop37、SetSimMode命令有几个参数?正确答案:138、哪一种写法不能循环5次?正确答案:For i=1 To 9 :Next39、下列哪一个不是键盘命令?正确答案:KeyClick40、按键码76是下列哪一个按键?正确答案:L41、空格键的按键码是?正确答案:3242、延时的命令是?正确答案:Delay43、下列哪一个不是鼠标命令?正确答案:LeftThreeClick44、下列属于键盘命令的是?正确答案:KeyUp45、如何退出Do循环的命令?正确答案:Exit Do46、得到一个按键的按键码,以下哪一个方法是完全正确的?正确答案:在按键精灵编辑界面的基本命令的键盘命令部分查询47、EndScript命令的意义是?正确答案:脚本停止运行48、延迟3秒,以下哪一句代码是正确的?正确答案:Delay 300049、下列哪一个命令会暂停脚本?正确答案:WaitClick50、按键精灵找图命令需要的图片格式是下列哪一个?正确答案:*.BMP51、以下哪一个不属于按键精灵基本命令?正确答案:压缩命令52、取指定点颜色的命令是?正确答案:GetPixelColor53、FindPic命令有几个参数?正确答案:854、区域找图的命令是?正确答案:FindPic56、区域找色的命令是?正确答案:FindColor57、下列哪一个不是循环命令?正确答案:Select Case58、鼠标相对移动的命令是? 正确答案:MoveR59、下面哪一个是循环命令?正确答案:Do...Loop60、鼠标右键按下的命令是?正确答案:RightDown61、鼠标所在位置为(0,50),经过命令 MoveTo 50+50,100 后鼠标所在位置为?正确答案:100,10062、下列哪一段代码不能输出"L"键?正确答案:Keyup "L", 163、下列RGB颜色值,书写错误的是?正确答案:"FFFFFFFF"64、FindColor命令有几个参数?正确答案:765、按键精灵语言大小写的描述哪一个是正确的?正确答案:按键精灵不区分大小写66、鼠标所在位置为(50,50),经过命令 MoveR 50,100 后鼠标所在位置为:正确答案:100,15067、延时命令 Delay 1000,以下的解释哪一个是正确的?正确答案:延迟1秒68、不能实现键盘按下"A"键的命令是?正确答案:KeyPressW "A",169、以下哪一个命令会暂停脚本?正确答案:WaitKey70、LeftDown命令有几个参数?正确答案:171、延迟2小时,以下哪一句代码是正确的?正确答案:Delay 1000*60*60*272、颜色值为"000000"是什么颜色?正确答案:黑色73、下列属于鼠标命令的是?正确答案:RightClick74、下列哪一种写法是错误的?正确答案:If Goto a Then :End If75、下列哪一个是循环命令?正确答案:While...Wend76、文本内容和数字连接在一起(连接符)应使用下列哪一个符号?正确答案:&77、以下哪一种方式不能无限循环?正确答案:在脚本开头加入"For 10000",脚本尾部加入"Next"78、下列哪一个不是逻辑运算符?正确答案:Const79、以下哪一个不是按键精灵可以使用的界面?正确答案:检测血条上某一点,如果此点不是血条的颜色则执行加血操作80、以下哪一个不是按键精灵可以使用的界面?正确答案:GUI界面81、KeyPress命令有几个参数?正确答案:282、键盘弹起的命令是?正确答案:KeyUp83、以下哪一段命令能正确执行"当a=1时点击A键,否则点击B键"?正确答案:If a=1 Then:KeyPress "A",1:Else:KeyPress "B",1:EndIf84、如何退出For循环的命令?正确答案:Exit For85、代码KeyPress "A",1 调试后提示出错,错误的原因是?正确答案:逗号使用了全角符号无法识别导致错误86、以下哪一个写法不能点击"shift"键? 正确答案:KeyPress 60, 187、默认情况下某些特定窗口模拟按键可能失效,以下哪种方法可能可以解决?正确答案:在脚本开头增加代码:SetSimMode 25、以下哪一个写法不能点击"shift"键?正确答案:KeyPress 60, 17、如何退出For循环的命令?正确答案:Exit For12、以下哪一段命令能正确执行"如果(70,416)的颜色等于"FFFFFF"则鼠标移动到点(100,200)"?正确答案:IfColor 70, 416, "FFFFFF", 0 Then:MoveTo 100,200:EndIf25、鼠标右键弹起的命令是?正确答案:RightUp31、区域找色的命令是?正确答案:FindColor32、不能正确调用KeyPress命令的写法是?正确答案:KeyPress "FB",134、下列哪一种写法是错误的?正确答案:If Goto a Then :End If37、延迟3分钟,以下哪一句代码是正确的?正确答案:Delay 1000*60*338、代码KeyPress "A",1 调试后提示出错,错误的原因是? 正确答案:逗号使用了全角符号无法识别导致错误39、附件中哪一种文件可以不经过释放直接使用?正确答案:BMP41、鼠标中键单击的命令是?正确答案:MiddleClick42、哪一种不能正确调用KeyPress命令?正确答案:KeyPress "FA",143、不属于按键精灵基本命令是?正确答案:启动命令44、键盘按下的命令是?正确答案:KeyDown49、按键精灵语言大小写的描述哪一个是正确的?正确答案:按键精灵不区分大小写1、SetSimMode 1 的实际意义是?正确答案:使用硬件模拟7、以下哪一种方式不能无限循环?正确答案:在脚本开头加入"For 10000",脚本尾部加入"Next"10、代码KeyPress "A",1 调试后提示出错,错误的原因是? 正确答案:逗号使用了全角符号无法识别导致错误11、不能正确调用KeyPress命令的写法是?正确答案:KeyPress "FB",113、下列哪一个不是鼠标命令?正确答案:LeftThreeClick16、键盘弹起的命令是?正确答案:KeyUp17、以下哪一个是循环命令?正确答案:for...next18、不能实现键盘按下"A"键的命令是?正确答案:KeyPressW "A",120、鼠标所在位置为(50,50),经过命令 MoveR 50,100 后鼠标所在位置为:正确答案:100,15021、默认情况下某些特定窗口模拟按键可能失效,以下哪种方法可能可以解决?正确答案:在脚本开头增加代码:SetSimMode 224、GetPixelColor命令有几个参数?正确答案:226、FindColorEx命令有几个参数?正确答案:927、下面哪一个命令会暂停脚本?正确答案:MsgBox31、不属于按键精灵基本命令是?正确答案:启动命令43、哪一种不能正确调用KeyPress命令?正确答案:KeyPress "FA",145、哪一种写法不能循环5次?正确答案:For i=1 To 9 :Next46、MoveTo命令有几个参数?正确答案:247、下列哪一个不是循环命令?正确答案:Select Case48、以下哪一个是自动打怪的思路?正确答案:检测怪物血条上某一点,如果此点是血条的颜色则执行打怪操作49、以下哪一个命令不会暂停脚本?正确答案:for...next50、指定句柄进行截图,以下哪种情况不会导致截到的图是黑色?正确答案:窗口标题动态变化51、组合键"CTRL+C"的正确按键顺序是?正确答案:按下"CTRL",点击"C",弹起"CTRL"52、鼠标所在位置为(50,50),经过命令 MoveTo 50,100 后鼠标所在位置为:正确答案:50,10053、哪一种写法不能循环5次?正确答案:For i=1 To 9 :Next54、以下哪一个命令会暂停脚本?正确答案:WaitKeyDo ... Loop 语句有几种使用写法?∙A、For i = 1 to 10 : i = i - 1 : Next B、4种C、2种D、5种使用哪个运算符(命令)可以实现将逻辑颠倒?∙A、Not B、And C、Imp D、Xor下列哪一个不是键盘相关命令?∙A、KeyDown B、KeyClick C、KeyPress D、KeyUp 结构化语句可以多层使用,互不影响,这种写法被称作?∙A、分支B、嵌套C、重载D、循环FindColorEx 命令查找类型设置为1时,与下列哪条命令的功能是相同的?∙A、FindCenterColor B、FindPic C、Findcolor D、GetPixelColor 以下哪种结构是不推荐在大型脚本工程中使用的?∙A、循环结构B、顺序结构C、分支结构D、跳转结构哪个运算符可以实现多个逻辑全部为真时返回真?∙A、And B、not C、xor D、or使用VarType命令判断一个数据,返回值为0说明这个数据?∙A、是数字数据B、是对象数据C、不存在D、是字符串使用InputBox 命令可以弹出要求用户输入内容的对话框,他的第三个参数表示?∙A、对话框描述B、对话框风格C、对话框标题D、默认数据在脚本中定义一个变量应该使用哪条语句?∙A、Global B、ReDim C、Dim D、Const使用按键抓抓工具不能正常获取到屏幕颜色时,可以尝试勾选哪个选项?∙A、指定窗口句柄B、增强取色C、抓多点D、偏移抓点部分结构化语句支持在执行的过程中跳出,这一操作使用哪一个前缀的代码进行?∙A、Break B、Exit C、Quit D、End以下哪一种循环语句写法被称为“死循环”?∙A、Do Until ... Loop B、For ... Next C、Do While ... Loop D、Do ...Loop如何在按键抓抓工具中自动生成多点找色脚本?∙A、点击找图找色按钮,在区域找色界面生成B、在图像页面上方选中抓多点,按热键抓点后,点击生成代码C、点击找图找色按钮,在模糊找色界面生成D、点击找图找色按钮,在区域找图界面生成下列哪一个自定义标识符命名是不合法的?∙A、IntY B、TempStr C、ajjl D、if按键码34是下列哪一个按键?∙A、Pageup B、PageDown C、Home D、End以下关于编辑器调试界面的单步和步过的功能描述错误的是?∙A、单步和步过都用于跟踪代码执行情况B、单步一次执行一行,步过一次执行一个调用C、两者都可以与断点配合达到更好的调试效果D、单步和步过彼此独立,不能配合使用在编辑器中如何快速跳转到指定子程序代码处?∙A、在编辑器上方的下拉框中选择B、在基本命令中找到对应命令点击跳转C、使用搜索功能D、在全部命令中输入子程序名字,点搜索命令按键码五十三是下列哪一个按键?∙A、6B、7C、5D、4使用Msgbox 命令可以弹出对话框,并自定很多样式,他的第三个参数表示?∙A、对话框标题B、父窗口句柄C、对话框内容D、对话框风格下面哪一个命令会将脚本暂停?∙A、LeftClick B、MsgBox C、KeyDown D、For...Next 无法实现键盘按住"A"键的命令是?∙A、KeyPressW "A",1B、KeyPressS "A",1C、KeyPressH "A",1D、KeyPress "A",1下面选项中哪个是循环的命令?∙A、Function B、Do...Loop C、Sub D、And以下哪条命令可以得到表示变量数据类型的字符串?∙A、IsNumeric B、IsNull C、TypeName D、VarType 以下哪一个命令能够暂停脚本?∙A、if语句B、WaitKey C、for...next D、keydown 在按键精灵中可以精确表示最大范围整数的数字类型是?∙A、Currency B、Long C、Double D、String键盘按键回车的按键码是?∙A、12B、11C、13D、14a = "2" + 2 语句执行后,变量a 的值为?∙A、22B、4C、"22"D、3执行语句For i = 1 to 5 : Next 后,变量i的指值为?∙A、4B、6C、5D、0十六进制值"FFFFFF"是什么颜色?∙A、蓝色B、白色C、红色D、黑色不使用任何结构化语句实现的代码被称为什么结构?∙A、顺序结构B、分支结构C、跳转结构D、循环结构执行循环语句For i = 4 to 13 Step 2 : Next ,循环会被执行多少次?∙A、13B、5C、4D、6按键精灵中可用于表现任意文字的数据类型是?∙A、Double B、String C、Time D、Long 在脚本开头中加入代码Msgbox True ,弹出的值为?A、0B、空值C、-1D、Ture阅读代码时可以使用下列哪一项功能将其他代码缩短,方便浏览?∙A、注释B、查找C、折叠D、批注鼠标所在位置为(50,50),经过MoveTo 50,100 命令后鼠标所在位置为:∙A、100,150B、100,100C、50,50D、50,100 将数字转换为字符串使用那条命令?∙A、Val B、CLng C、Cstr D、IsNumeric下列哪一个按键的按键码是105∙A、NUM 0B、NUM 9C、NUM 7D、NUM 8下列中的RGB颜色值,书写无误的是?∙A、"DD"B、"JJ"C、"GG"D、"HH"Select语句在一条分支中判断多个条件值时,条件应使用那种分隔符?∙A、.(点号)B、;(分号)C、,(逗号)D、|(竖线)2、2 两个数字型的数据使用哪个运算符得到的结果为"22"∙A、+B、and C、&D、*Goto语句可以跳转到使用那条语句标记过的代码行?∙A、If B、TracePrint C、Rem D、Label在编辑器中可以使用哪个功能设置自定义关键的提示和突出颜色显示?∙A、注释B、折叠C、断点D、批注选择按键精灵找图功能支持的图片文件格式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、前言调试程序,是软件开发过程中的一个必不可少的环节。
这篇帖子,匠人试着来整理一下一些调试的技巧。
说到“技巧”,这个词自从被所长批臭之后,匠人就吓得不敢再提,生怕一不小心就暴露了思想的浅薄和眼光的局限,呵呵。
所以咱们不叫“技巧”,干脆低调点,就叫“雕虫小技”吧。
这里所讨论的“调试”技巧,有些是必须结合开发工具本身的功能来实现,而有些可以通过烧录芯片来验证。
各种开发工具,提供的功能多少强弱也不尽相同,这些方法也未必都能套用。
仅供参考吧。
最后说明一下,这是没有草稿的帖子,匠人仍然以不定期连载的方式,边写边发边改。
可能结构会比较混乱。
欢迎大家一起参与讨论。
二、磨刀不误砍柴功在调试之前,需要掌握以下一些基本功:1、熟悉当前的开发(调试)环境,比如:设置断点、单步运行、全速运行、终止运行,查看RAM、查看堆栈、查看IO口状态……总之,要熟练掌握基本操作的方法,并深刻了解其中意义。
2、了解芯片本身的资源和特性。
3、了解一点汇编语言的知识。
(本来匠人是准备写“精通”的,但考虑到现状,还是“放低”这方面的要求罢了)。
4、掌握基本的电路知识和排错能力。
(软件调试有时也会牵涉到硬件原因。
总不能连三极管的好坏都不能识别吧?)5、万用表、示波器、信号发生器……这些工具总该会用吧?6、搜索、鉴别资料的能力。
(内事问百度、外事问古狗、有事没事上21ic网)7、与人沟通,描述问题的能力。
(调试36计的最后一计——就是向他人讨教。
当然,你得把话说明白才行)差不多了,如果上述7把砍柴刀磨好了,就可以开始调试了。
接下来,请调入你的程序……——什么?你说你程序还没写?——匠人倒塌……三、优先调试人机界面面对程序中的一大堆模块,无从下手是吗?好吧,匠人告诉你,先调显示模块,然后是键盘。
为什么要先调显示模块?道理很简单,我们说“眼睛是心灵的窗户”,同样,“显示是程序的窗户”。
一旦把显示模块调试好了,就可以通过这个窗口,偷窥(天呐,这两个居然是敏感字!)程序内部的数据和状态了。
然后紧接着,就是调试键盘模块。
有了这个按键,我们就可以人工干预程序的运行了。
——什么,你的程序没有显示和按键?——这位童鞋,你真不幸,请去检查一下自己的人品和星座运程先。
谢谢。
实在是没显示?再看看系统有蜂鸣器吗?如果侥幸有的话,也能凑合着发发提示声音吧?或者,有串口吗?可以考虑借助PC 端的串口调试软件来收发数据,这也是一个间接的人机交流方法。
总而言之,要尽快建立人机交流界面。
(未完待续)四、给程序安装个黑匣子某年某月的某一天,一架飞机以优美的抛物线形状,一头栽到海里去了……几天后,人们找到了飞机的黑匣子,里面记录了飞行员的最后一句话:“天呐,我看到火星人了!……”以上空难情节我们经常会通过新闻看到吧(当然,最后一句是匠人版的科幻情节)。
看看,飞机的黑匣子可以记录并再现现场,多么神奇!欧耶!我们在调试程序时,也可以借鉴这个方法,给程序按装一个黑匣子。
程序中的黑匣子其实就是一个在内存中开辟的队列。
队列的原理我们很清楚,先进先出,后进后出(与飞机黑匣子的特性相同)。
比如说吧,假设我们的系统在工作中,某个输入量的采样值经常受到不明原因的扰动。
我们要摸清这种扰动的规律,以便对症下药。
但是这种扰动稍纵即逝。
我们的困扰是:程序正常运行时看不出规律,单步走又难以捕捉扰动。
怎么办?有没有办法,把扰动记录下来?当然可以。
我们可以利用系统里剩余的RAM,开辟一块单元,做成队列。
并写段测试程序,定时把新采样值压入队列。
然后我们让程序运行,在需要的(任意)时刻,让程序停下来。
这时,队列里记录的就是最新一批采样数据。
只要队列的深度足够大,我们就可以找出扰动的规律来。
——什么,你问我什么叫队列?——匠人曰“天呐,我看到火星人了!……”(未完待续……)也谈程序“鲁棒性”magicchip 发表于 2008-2-1 1:24:00 0推荐N年前,匠人曾经在“侃单片机”论坛里发起过一次关于软件抗干扰的讨论。
其实,当时的讨论基本上已经达到了软件所能做的一切范畴。
但是随后,讨论的方向逐渐转向了“软件抗干扰是否有实际意义”上去了。
虽然匠人坚持认为软件在抗干扰方面可以有所作为。
但是,来自反面的意见,也让匠人深思了许久。
世纪轮回。
这次,由emailli网友发起的“建议做为2008年1月的专题----软件抗干扰的方法研究”,又把当年的讨论场景再现。
别具意味的是,对软件抗干扰本身的置疑也被再次提出。
从某种意义上来说,随着单片机硬件抗干扰性能的越来越完善。
软件在此方面的用武之地,似乎确实在萎缩。
试问又有几个单片机程序中应用到了软件陷阱呢?比例恐怕很小吧。
然而,匠人最近有事没事,经常喜欢在同事面前卖弄这个词——“鲁棒性”。
鲁棒性robust[rEJ5bQst]adj.强壮的;健壮的His robust strength was a counterpoise to the disease.他身体强壮抵住了这疾病。
粗野的,不文雅的(玩笑)什么叫“鲁棒性”呢?按匠人的理解,就是,你的程序是否把所有的因素(包括异常因素)都考虑进去了,并且对可能的异常因素采取的规避、补救措施。
比如:1、我们要让一个变量做递增运算,每次+1,达到某一个阀值时清零。
那么你在做阀值判断时,是判“等于”,还是判“大于等于”?(正确答案:判“大于等于”)2、我们要根据一个变量去查表,或散转,假设这个变量正常范围=0~7。
那么你有没有考虑过,如果该值大于7后,程序该怎么办?(答案:先屏蔽(剔除)无效值,再去查表,或散转)3、我们要让某个IO口输出“高电平”去驱动外部电路(比如说,继电器)。
那么你是否只输出一次“1”就认为完事了?(答案:开辟输出缓存,定期刷新输出口)4、串口接收数据,假设收到“0X00”时执行动作A,收到“0X01”时执行动作B。
那么,你有没有考虑过,如果收到的是其他数据,该怎么办?(答案:参考第2例)这样的例子不胜枚举,每一个细节中都存在陷阱。
如果在程序设计中予以考虑,则可以规避;否则,很难说你的程序运行过程中会发生什么事情。
因此,一个好的程序,定义应该如此:“在正常情况下,可以得到正常的结果;在异常情况下,可以得到意料中的结果。
”而不是:“在正常情况下,可以得到正常的结果;在异常情况下,得到不可意料的结果。
”匠人的一些同事(新手)往往会跟匠人来犯犟。
强调曰:“我的程序没有BUG啊,是输入不正常导致的。
”,云云。
确实,这些细节上的疏忽,不能称为BUG。
我们只能称之为“鲁棒性”差!再扩展开来看,在整个系统中,不光是软件需要考虑“鲁棒性”,硬件也同样需要考虑。
举个例子:假设系统工作电压为5V,那么当电压低于5V时,会发生什么事情?考虑过吗?OK,你说你有复位电路,电压跌落时会复位。
那么匠人再问:电压快速跌落时可以复位,但如果电压缓慢下降,你的复位电路还能正常工作吗?或者,电压波动时,又会如何?这样的细节还有很多,贯穿在整个设计过程中。
对于有准备的人来说,只要事先预想到了并采取规避措施,都不是问题。
对于没有准备的人来说,调试将是一场艰苦的跋涉。
因为前进的道路上,“坑”太多了,指不定在哪里跌倒。
以上,为匠人信口开河。
欢迎探讨。
五、在程序中设卡伏击,拦截流窜犯警察抓流窜犯的场面我们都很熟悉了。
一般的方法,就是以案发现场为中心,在犯罪分子逃窜的必经路口,设卡盘查。
有道是天网恢恢疏而不漏,叫你插翅也飞不过去。
有时,程序中也会出现这样一个“流窜犯”,它就是PC指针。
对于一个未经调试的不成熟的程序来说,导致PC指针跑飞的因素很多,我们逐条列举并分析之:1、电磁干扰(如果不是在现场,那么这一条可以暂时不考虑。
因为在调试环境下一般不会有干扰);2、程序结构错乱(喜欢用jmp或goto类指令的尤其要注意这点);3、堆栈溢出或错乱,导致PC指针出错;4、PC指针被错误改写(有些芯片PC指针存储单元和其它RAM单元的访问方法是一样的,很容易被误写);5、数据错误,导致程序没有按照预期路径运行;6、看门狗溢出(原因一般是因为看门狗设置不当、喂狗不及时、程序堵塞或者程序死循环);7、中断被意外触发;8、外部电路问题,比如电源不稳等等;9、其它……当我们开始怀疑PC指针时,我们首先要做的是确认PC指针是否跑飞了,其次要找到PC指针跑飞的证据。
我们可以在不同的分支路口,或者在我们怀疑的地方,设立断点,看程序是否走了不该经过的路径。
举个例子,比如我们怀疑程序运行中看门狗发生了溢出复位,那么很简单,我们只需要在初始化入口设立一个断点,让程序运行。
正常情况下,程序只会经过一次该断点。
如果再次经过该断点被拦截,那么我们就可以初步确诊“看门狗发生了溢出复位”。
再举个例子,比如程序中某个环节有A、B两个分支,正常时只走A分支,不正常时才走B 分支。
那么我们可以在B分支设立断点,程序一旦异常,走入B分支,就可以被拦截下来。
程序被拦截下来后,我们可以勘察现场,查看RAM区内容和程序刚走过的路径,从中分析导致程序PC指针错乱的原因。
当然,并不是每一次伏击守候都能一举擒获流窜犯(敌人是“狡猾”的,呵呵)。
这就需要我们多一份耐心和技巧。
通过不断调整断点位置来改变拦截地点。
逐渐逼近并找到根源(流窜犯的老巢),然后一举拿下。
(未完待续,喜欢就顶)六、向猎人学习挖坑设陷阱的技术上一回说到,在程序中设卡(断点),可以拦截流窜犯(程序流程错误)。
实际上,断点的功能可强大了,不但可以拦截程序流程错误,也可以拦截数据错误。
当然,这需要一些辅助手段。
还是以前面提到的一个例子来说。
比如某个采样值(当然,也不一定是采样值,在这里也可以是RAM中任意单元中的值)受到未明因素影响,经常“乱跳”。
这种数据出错的原因,可能如下:1、计算错误(比如溢出),导致结果出错;2、被其它程序段误改写;3、其它原因……当数据出错后,我们希望能够在最快时间内,让程序停下来,这样才能有效查出是哪一段程序出了问题。
有些调试环境本身可以捕捉数据错误,并产生断点中断。
这当然最好不过。
但是如果调试环境本身不提供这种捕捉功能,那么就需要我们自己来制造机关了。
看看猎人是是如何做的:他们会在猎物经过的地方,挖个坑,上面盖上浮土。
当小型动物经过时,浮土不会塌陷。
而当体重较大的动物经过时,它们的体重就会压垮浮土,掉进猎人的陷阱。
猎人的这个陷阱机关,妙就妙在是它“智能”的,会根据动物的体重进行筛选。
轻巧的小白兔来了——放过,笨重的大狗熊来了——捕获!欧耶!好了,回到程序中来,假设我们要监控的那个RAM单元,正常值域为0~9;那么我们可以写一段测试代码,判断数值是否>9,根据判断结果执行两个分支,并在那条错误的分支路径上设置断点。
如果数据没有出错,程序会一直运行(小白兔请放心过去);直到数据错误发生,断点会自动停下来(大狗熊给我拿下)。