计算机等级考试二级C语言上机操作.docx
《计算机等级考试二级C语言上机操作.docx》由会员分享,可在线阅读,更多相关《计算机等级考试二级C语言上机操作.docx(13页珍藏版)》请在冰豆网上搜索。
计算机等级考试二级C语言上机操作
2011年计算机等级考试二级C语言上机操作指导
程序设计是实践性很强的过程,任何程序最终都必须在计算机上运行,以检验程序的正确与否。
因此在学习程序设计中,一定要重视上机实践环节,通过上机可以加深理解C语言的有关概念,以巩固理论知识,另一方面也可以培养程序调试的能力与技巧。
一.C语言程序的上机步骤
按照C语言语法规则而编写的C程序称为源程序。
源程序由字母、数字及其它符号等构成,在计算机内部用相应的ASCII码表示,并保存在扩展名为“.C”的文件中。
源程序是无法直接被计算机运行的,因为计算机的CPU只能执行二进制的机器指令。
这就需要把ASCII码的源程序先翻译成机器指令,然后计算机的CPU才能运行翻译好的程序。
源程序翻译过程由两个步骤实现:
编译与连接。
首先对源程序进行编译处理,即把每一条语句用若干条机器指令来实现,以生成由机器指令组成的目标程序。
但目标程序还不能马上交计算机直接运行,因为在源程序中,输入、输出以及常用函数运算并不是用户自己编写的,而直接调用系统函数库中的库函数。
因此,必须把“库函数”的处理过程连接到经编译生成的目标程序中,生成可执行程序,并经机器指令的地址重定位,便可由计算机运行,最终得到结果。
C语言程序的调试、运行步骤可以用图A-1表示:
图A-1C语言程序的调试、运行步骤
图A-1中,虚线表示当某一步骤出现错误时的修改路线。
运行时,无论是出现编译错误、连接错误,还是运行结果不对(源程序中有语法错误或逻辑错误),都需要修改源程序,并对它重新编译、连接和运行,直至将程序调试正确为止。
除了较简单的情况,一般的程序很难一次就能做到完全正确。
在上机过程中,根据出错现象找出错误并改正称为程序调试。
我们要在学习程序设计过程中,逐步培养调试程序目标程序的能力,它不可能靠几句话讲清楚,要靠自己在上机中不断摸索总结,它可以说是一种经验积累。
程序中的错误大致可分为三类:
²程序编译时检查出来的语法错误;
²连接时出现的错误;
²程序执行过程中的错误。
编译错误通常是编程者违反了C语言的语法规则,如保留字输入错误、大括号不匹配、语句少分号等等。
连接错误一般由未定义或未指明要连接的函数,或者函数调用不匹配等因素引起,对系统函数的调用必须要通过“include”说明。
对于编译连接错误,C语言系统会提供出错信息,包括出错位置(行号)、出错提示信息。
编程者可以根据这些信息,找出相应错误所在。
有时系统提示的一大串错误信息,并不表示真的有这么多错误,往往是因为前面的一两个错误带来的。
所以当你纠正了几个错误后,不妨再编译连接一次,然后根据最新的出错信息继续纠正。
有些程序通过了编译连接,并能够在计算机上运行,但得到的结果不正确,这类在程序执行过程中的错误往往最难改正。
错误的原因一部分是程序书写错误带来的,例如应该使用变量x的地方写成了变量y,虽然没有语法错误,但意思完全错了;另一部分可能是程序的算法不正确,解题思路不对。
还有一些程序有时计算结果正确,有时不正确,这往往是编程时,对各种情况考虑不周所致。
解决运行错误的首要步骤就是错误定位,即找到出错的位置,才能予以纠正。
通常我们先设法确定错误的大致位置,然后通过C语言提供的调试工具找出真正的错误。
为了确定错误的大致位置,可以先把程序分成几大块,并在每一块的结束位置,手工计算一个或几个阶段性结果,然后用调试方式运行程序,到每一块结束时,检查程序运行的实际结果与手工计算是否一致,通过这些阶段性结果来确定各块是否正确。
对于出错的程序块,可逐条仔细检查各语句,找出错误所在。
如果出错块程序较长,难以一下子找出错误,可以进一步把该块细分层更小的块,按照上述步骤进一步检查。
在确定了大致出错位置后,如果无法直接看出错误,可以通过单步运行相关位置的几条语句,逐条检查,一定能找出错误的语句。
当程序出现计算结果有时正确有时不正确的情况时,其原因一般是算法对各种数据处理情况考虑不全面。
解决办法最好多选几组典型的输入数据进行测试,除了普通的数据外,还应包含一些边界数据和不正确的数据。
比如确定正常的输入数据范围后,分别以最小值、最大值、比最小值小的值和比最大值大的值,多方面运行检查自己的程序。
下面我们以TC2.0为上机平台,对C程序编译、连接和调试作简单介绍。
建议一开始学习上机时,把注意力放在程序的编译、连接和运行,已能运行为目标,而把调试部分放到学习了第8章后再看,只有具有一定的程序语句量,调试才有作用。
二.TurboC语言集成环境
TurboC是一个常用的、最基本的C语言工具,一般简称TC。
它为C语言开发提供了操作便利的集成环境。
源程序的输入、修改、调试及运行都可以在TC集成环境下完成,非常方便有效。
TC2.0系统非常小巧,但功能齐全。
它主要支持DOS环境,因此在操作中无法使用鼠标,更多的需要通过键盘操纵菜单或快捷键完成。
这也成为使用TC的一大遗憾。
1.TC启动
由于TC支持DOS环境,TC系统的安装十分方便。
如果有安装盘,可以按照提示一步步完成安装;如果没有安装盘,可以从其他机器直接拷贝已安装好的系统。
由于TC是在DOS环境下工作的,无法象Windows应用程序那样,通过“开始”菜单的程序项运行。
首先要找到TC系统的安装(复制)目录,双击其上的tc.exe应用程序,可以启动TC系统,其界面如图A-2所示。
图A-2TC界面
图A-2中,菜单包含了所有操作的功能;编辑窗口是用于输入、修改程序的区域;信息窗口将显示程序编译、连接和运行过程中的错误信息或有关提示信息;快捷热键提示将给出常用操作的快捷键提示信息,以方便用户的操作。
2.运行程序
要运行一个C程序,必须经过:
输入源程序、修改错误、编译连接和运行几个步骤。
(1)编辑
在编辑窗口中,直接输入程序。
如果要进行修改,可以使用【↑】、【↓】、【←】、【→】四个方向键,移动光标到所需位置,然后删除错误,输入正确的内容。
(2)编译、连接和运行
同时按下【Ctrl】+【F9】键,将对编辑窗口中的程序,完成编译、连接和运行三个步骤。
²如果程序没有错误,将直接运行程序;
²如果存在编译错误,信息窗口中将显示错误信息,并终止连接与执行步骤;
²如果编译通过,但存在连接错误,信息窗口中将显示错误信息,并终止执行步骤。
任何错误都必须纠正后,重新按【Ctrl】+【F9】键运行。
如果还有错,继续修改,直到能正确执行为止。
即使通过了编译和连接,并不说明程序就没有错误了,解题思路错误或语句的错误使用(语句格式没有错),都会导致无法得到正确的结果,甚至程序无法正确执行。
如果程序在执行过程中无法结束(死机),可以按【Ctrl】+【break】强制结束。
(【break】位于键盘最右上角——功能键)。
(3)输入数据
如果程序中有scanf()语句,则屏幕将出现一个黑底的输入窗口,等待输入数据,通常是输入一个数据,打一个空格或回车,然后输入下一个数据。
直到输入完所有的数据。
如果scanf()语句中格式规定是逗号分隔,则各数据之间要输入逗号。
(4)查看结果
输入完数据,系统将自动关闭输入窗口,运行程序后,回到编辑窗口。
但运行结果并未在屏幕上显示,若要查看运算结果,需要按【Alt】+【F5】才出现输出窗口。
看完后,再按任意键将关闭输出窗口。
对于没有输入要求的程序,按下【Ctrl】+【F9】运行,屏幕上不会有什么变化,但这并不表示程序未被运行,按【Alt】+【F5】就能看到结果。
通过上述步骤,同学们可以快速掌握C语言的上机过程,运行自己的程序。
但还只能处理一些简单的问题,如果想更有效地调试运行C程序,下面的内容是必不可少的。
(5)运行环境设置
第一次上机时,如果一个简单正确的程序却无法运行,需要检查一下运行环境是否设置正确。
具体参看下面“TurboC菜单”中介绍的“Option”菜单项。
3.TurboC菜单
前面介绍的是上机过程中的最基本的一些操作。
为了对TC的功能有一个全面的了解,我们将对各主要菜单项分别予以介绍。
由于TC环境下不能使用鼠标,对打开菜单栏有两种方法:
²按【F10】,然后按【←】或【→】选择相应菜单位置,再按回车键【Enter】。
²按【Alt】+【菜单上红色大写字母】
当选中一个菜单后,会弹出下拉菜单项,通过【↑】或【↓】选择相应菜单项,再按回车键【Enter】,完成菜单功能操作。
按【Esc】可以取消菜单选择(不是撤销菜单功能)。
TC中提供了完善的帮助信息,按【F1】屏幕上将弹出帮助窗口。
但其中的信息都是英文的。
TC的快捷键通常是组合键,如【Ctrl】+【F9】表示要同时按下两个键。
对于三键的组合键,其前两个键要同时按下,松手后再按第三个键,如【Ctrl】+【k】+【b】表示先同时按下【Ctrl】键和【k】键,松手后再按【b】键。
(1)File菜单(文件操作)
●Load(【F3】):
调入一个已存在的程序文件(扩展名为c)。
【F3】是快捷键。
●Pick(【Alt】+【F3】):
从最近曾经调入过的文件中选择一个调入。
●New:
清除编辑窗口中的程序,供输入一个新程序。
●Save(【F2】):
把编辑窗口中的程序保存到文件中。
如果该程序已经保存过,该操作将更新文件内容;如果该程序是新输入的,需要进一步输入文件名称或路径。
●Writeto:
把当前程序写到另外命名的文件上,相当于Windows文件菜单中的“另存为”功能。
●Quit(【Alt】+【x】):
退出TC系统。
(2)Edit(编辑操作)
它没有下拉菜单,按回车键【Enter】直接进入编辑窗口,在编辑过程中,一些常用的编辑功能依靠快捷键实现。
●【Ctrl】+【y】:
删除光标所在行的整行信息。
●【Ctrl】+【k】+【b】:
把光标所在位置定义为块信息的头部。
●【Ctrl】+【k】+【k】:
把光标所在位置定义为块信息的尾部。
块头部定义与块尾部定义要按顺序配合起来使用,所定义的块变成白底蓝字。
●【Ctrl】+【k】+【h】:
取消所定义的块信息。
若重新定义新块也会取消原定义块。
●【Ctrl】+【k】+【c】:
把定义的块信息复制到光标所在位置。
●【Ctrl】+【k】+【v】:
把定义的块信息移动到光标所在位置。
●【Ctrl】+【q】+【f】:
查找特定字符,它会在屏幕上部提示输入查找字符,如图A-3所示,当输入了“main”后,屏幕上出现Option信息,要求输入查找方式:
²G对整个文件进行查找
²回车从光标当前位置向后查找
图A-3字符查找
●【Ctrl】+【q】+【a】:
替换字符串。
它在上面查找的过程中,再输入替换字符Replace。
●【Ctrl】+【L】:
重复上一次查找或替换。
●【Ctrl】+【q】+【[】:
对光标所处位置的“(、[或{”定位相应的“}、]或)”。
这在程序中检查三种括号是否匹配十分有用。
在“记事本”中选中一块文本,使用鼠标能很方便地实现。
而在TC中由于无法使用鼠标,只能通过键盘进行,我们需要定义文本块的开始位置与结束位置,当选中后,文字变成白底蓝字,然后才能实现文本块的复制和移动,步骤与“记事本”中相似。
因此上述5个操作需要配合使用。
(3)Compile菜单(编译连接操作)
●Compile(【Alt】+【F9】):
把编辑窗口中的程序编译成目标文件。
●Link:
把编辑窗口中的程序连接成可执行文件。
●Make(【F9】):
把编辑窗口中的程序经编译、连接,生成可执行文件。
(4)Run菜单(运行操作)
●Run(【Ctrl】+【F9】):
执行编辑窗口中的程序。
如果该程序最近未编译连接过,将先自动编译连接,然后再执行。
(5)Option菜单(建立工作环境)
●工作环境目录的设置:
如果使用安装盘安装,该工作环境目录会自动设置好。
如果是通过系统复制的,则需要对“Option”菜单的“Directories”菜单项进行设置。
假设TC所在目录为:
“D:
\TC”,在打开的目录窗口中应填入:
Includedirectories:
D:
\TC\INCLUDE
Librarydirectories:
D:
\TC\LIB
以确保程序连接时能从这两个位置找到系统包含文件和系统库文件。
如图A-4所示。
图A-4TC工作目录设置
●命令行参数输入:
在学习了第8章“指针”后,会用到命令行参数。
可以执行“Option”菜单的“Arguments”菜单项,输入命令行参数(不包括可执行文件名,各参数用空格分隔),回车结束输入,按【Esc】隐去菜单,然后可按【Ctrl】+【F9】运行程序,参数便能被主函数接受。
4.窗口操作
在图A-2的TC界面下,屏幕上半部分是编辑窗口,下半部分是信息窗口。
如果想把编辑窗口扩大到整屏,可按【F5】键,这时信息窗口将被遮住,再按【F5】键又可以恢复成上下两个窗口。
因此【F5】键就象一个电源开关。
如果编辑窗口被扩大到整屏,而又想看一下信息窗口,可使用【F6】进行窗口切换。
如果在程序执行时又开了观察窗口,【F6】可以对三个窗口进行切换,切换过程是按一个方向循环。
在Windows中运行TC,所打开的窗口往往较小,边框线也不对。
按【Alt】+【Enter】键可以使窗口最大化,成为仿真Dos界面。
再按【Alt】+【Enter】又会恢复较小窗口。
5.程序调试
TC提供了必要的调试手段和工具,下面按照使用过程予以介绍。
(1)让程序执行到中途暂停以便观察阶段性结果:
方法一:
使程序执行到光标所在的那一行暂停。
①把光标移动到需暂停的行上;
②按【F4】或执行菜单Run中的“GotoCursor”操作。
当程序执行到该行将会暂停。
如果把光标移动到后面的某个位置,再按【F4】,程序将从当前的暂停点继续执行到新的光标位置,第二次暂停。
方法二:
把光标所在的那一行设置成断点,然后按【Ctrl】+【F9】执行,当程序执行到该行将会暂停。
设置断点的步骤为:
①把光标移动到需暂停的行上;
②按【Ctrl】+【F8】或执行菜单“Break/watch”中的“Togglebreakpoint”操作。
不管是通过光标位置还是断点设置,其所在的程序行必须是程序执行的必经之路,亦即不应该是分支结构中的语句,因为该语句在程序执行中受到条件判断的限制,有可能因条件的不满足而不被执行。
这时程序将一直执行到结束位置或下一个断点位置。
(2)设置需观察的结果变量
按照上面的操作,可使程序执行到指定位置时暂停,其目的是为了查看有关的中间结果。
按【Ctrl】+【F7】或菜单“Break/watch”中的“Addwatch”操作,屏幕上将会弹出小窗口供输入查看变量,如图A-5所示,我们输入了变量i进行查看。
对于图A-5中的例子,我们先把光标移动到第五行,然后按【F4】执行,程序到第五行暂停,如图A-6所示,查看(Watch)窗口中就会显示查看变量i的当前值。
绿色光条表示当前将被执行的程序位置(或暂停位置)。
多次使用【Ctrl】+【F8】可增加多个新的查看变量,如果想改变查看变量的名字或删除查看变量,可以按【F6】,使查看窗口成为操作窗口,然后按回车键【Enter】,可以改变查看变量,按删除键【Delete】可以删除查看变量。
这些菜单功能分别在“Break/watch”中。
图A-5输入查看变量
图A-6查看中间结果
(3)单步执行
当程序执行到某个位置时发现结果已经不正确了,说明在此之前肯定有错误存在。
如果能确定一小段程序可能有错,先按上面步骤暂停在该小段程序的头一行,再输入若干个查看变量,然后单步执行,即一次执行一行语句,逐行检查下来,看看到底是哪一行造成结果出现错误,从而能确定错误的语句并予以纠正。
单步执行按【F8】或执行菜单Run中的“Stepover”操作。
如果遇到自定义函数调用,想进入函数进行单步执行,可按【F7】或执行菜单Run中的“Traceinto”操作。
对不是函数调用的语句来说,【F7】与【F8】作用相同。
但一般对系统函数不要使用【F7】。
(4)断点的使用
使用断点也可以使程序暂停。
但一旦设置了断点,不管你是否还需要调试程序,每次执行程序都会在断点上暂停。
因此调试结束后应取消所定义的断点。
方法是先把光标定位在断点所在行,再按【Ctrl】+【F8】或执行菜单“Break/watch”中的“Togglebreakpoint”操作,该操作是一个开关,第一次按是设置,第二次按是取消设置。
被设置成断点的行将呈红色背景。
如果有多个断点想一下全部取消,可执行菜单“Break/watch”中的“Clearallbreakpoints”操作。
断点通常用于调试较长的程序,可以避免使用【F4】(运行程序到光标处暂停)功能时,需要经常把光标定位到不同的地方。
而对于长度为上百行的程序,要寻找某位置并不太方便。
如果一个程序设置了多个断点,按一次【Ctrl】+【F9】会暂停在第一个断点,再按一次【Ctrl】+【F9】会继续执行到第二个断点暂停,依次执行下去。
(5)结束调试
TC中通过“结束程序运行”(Programreset)来结束程序调试。
按【Ctrl】+【F2】或执行菜单Run中的“Programreset”操作实现。
(6)循环的调试实例
下面用单步执行功能来看一下for语句的执行流程。
如图A-7所示。
程序中把for(⋯⋯)分成三行,以便观察执行流程。
先把光标移动到第四行,然后按【F4】或执行菜单Run中的“GotoCursor”操作,按【Ctrl】+【F7】输入查看变量i,由于此时i未赋过值,所以显示的是一个随机数。
再连续按【F8】单步执行,可以观察绿色光条的位置变动和查看变量i的变化,绿色光条的位置变动就是程序执行的过程,同学们可以充分体会到for语句的执行流程。
图A-7循环调试实例
通过这个例子,同学们可以举一反三调试自己的程序了。
上面我们只对TC中主要的功能作了介绍,对于其他的操作同学们可以自己试验,或参考有关TurboC手册。
6.常用快捷键小结
【F2】:
保存程序【Ctrl】+【F2】:
结束程序调试运行
【F3】:
调入程序文件【Alt】+【F3】:
调入最近曾经用过的文件
【F4】:
程序运行到光标处暂停【F5】:
放大/缩小窗口
【Alt】+【F5】:
查看运行结果【F6】:
窗口切换
【F7】:
单步执行(可进入函数)【Ctrl】+【F7】:
增加查看变量
【F8】:
单步执行(不能进入函数)【Ctrl】+【F8】:
把光标所在行设为断点或取消段点
【F9】:
编译、连接程序【Alt】+【F9】:
编译程序
【Ctrl】+【F9】:
编译、连接、执行程序【F10】:
菜单选择
【F1】:
帮助【Alt】+【x】:
退出系统
上学吧为您提供计算机二级C语言考试资料下载:
司法考试十四门科目全面解读
分享
首次分享者:
玉君已被分享1次评论(0)复制链接分享转载举报
一、法理学、法制史、司法制度与法律职业道德
法理学是司法考试中一项基础性学科,每年的大纲都会随着学术研究以及政治形势的新动向作出适当调整。
因此,每年的大纲变动和新增考点都会成为当年
司法考试的重点内容。
但是,法理学基本的知识点和结构框架都是固定的。
法理学的重要知识点集中在法的本质、法的价值、法律原则和法律规则的关
系、法的溯及力、法律体系、法的运行方式、法的继承和移植、法与道德、法与人权、法治与法制的区别以及社会主义法治理念、社会主义法治国家。
根据近几年出题的规律,法理学的测试越来越注重运用法学知识分析、评价有关的案例、事例或者法条。
自2003年开始,每年都会考查一道法理学的论述
题。
法理学所占的分值也逐渐加大,接近50分。
因此,法理学的地位非常重要,值得重点关注。
法制史的内容比较少,教材上所有的内容仅占几十页,考查的形式是选择题,分值在10分上下。
法制史的重点一直比较突出,中国法制史方面集中在各
朝法制思想、婚姻继承制度、司法制度,著名法典、重要刑罚制度及其入律时间、清末修律、“预备立宪”等内容上。
外国法制史主要掌握罗马法、美国宪法、英
美司法制度、两大法系、大陆法系中宪法与民法的主要内容。
这些知识点要理解并能够运用其分析相关案例。
相比较而言,法制史的考题难度不大,是考生拿分
的科目。
司法制度与法律职业道德的地位和法制史相类似,分值在12分上下。
司法制度的重点内容集中在司法的基本原则、审判、检察、公证制度的基本原则。
法
律职业道德的重点内容包括法官、检察官的任职回避、法官、检察官、律师的违反职业道德的行为类型,这部分内容参照《法官法》、《检察官法》《律师法》
以及相关法律规范学习,会起到更好的效果。
二、民法
民法历来是司法考试中的所占分值最多的科目,2007年司法考试中民法就占到了97分之多,故有“得民法者得天下”的说法。
民法内容博大精深,需要
我们全面理解并融会贯通。
司法考试考查的比较全面,但还是有重点可循,而且这些重点在历年的考试中反复考查。
民法总则部分,主要集中在意思表示、不当得利与无因管理、诉讼时效、代理、特殊侵权等重点内容。
物权法的重点主要包括物权变动、物权的效力、共有、
用益物权、担保物权。
合同法中,重点是要约规则、缔约过失责任、合同的效力、买卖合同和赠与合同等。
婚姻法主要集中在夫妻共同财产和债务承担,继承法集
中在遗产的分配这一重要考点上。
知识产权法在14分左右,《著作权法》是重心,试题难度也最大。
当前的知识产权法命题越来越集中于侵权行为的认定。
《著
作权法》还易于考核权利主体、合理使用和权利内容。
《专利法》易于考核专利的新颖性,《商标法》易于考核商标的构成条件。
由于知识产权法愈来愈侧重理
论考查,试题几乎都是拟制的案例,考生仅仅靠复习法条是绝对行不通的。
建议在全面了解相关的法律、行政法规和司法解释的基础上认真阅读教材或接受培训
和辅导。
三、刑法
相信不用多说,大家都明白刑法的重要地位。
刑法也是司法考试中体现“重者恒重”这一特点的学科。
在刑法总则中,着重掌握刑法的基本原则、犯罪构成、
排除犯罪事由、共犯、犯罪停止形态及其处罚、罪数形态、刑罚的种类以及数罪并罚的原则。
刑法分则的罪名当中,盗窃、抢劫、绑架、故意杀人、故意伤害、
强奸、拐卖妇女儿童、诈骗、贪污贿赂犯罪是历年考查的重点,必须要牢牢掌握。
刑法的试题难度较大,需要投注较多的精力复习。
除了对教材的细致把握之外,相关的司法解释、刑法修正案也是重点内容
四、宪法、行政法
宪法在司法考试中所占分值为20分左右。
宪法的内容比较多,但考查难度不大,虽侧重于对法条的考查,但近几年对理论也有加强考查的趋势,而且论述
题的出现,也需要考生对宪法基本理论予以把握。
宪法的重点主要