《计算机二级C语言机试特殊方法.doc》由会员分享,可在线阅读,更多相关《计算机二级C语言机试特殊方法.doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、二级C语言 机试特殊方法 - 转载 来源不明 部分修改 这里的特殊方法只能用于编程题,且看不懂程序也能得分,甚至得满分,嘿嘿,不错吧! 我们要对这种方法的原理有一个清晰的认识,这样才能举一反三,事半功倍。下面通过例子来详细介绍这种方法。一、简单情况首先看一下上机环境的界面,如下图:注意,c:k01是考生文件夹的路径,接下来的工作就是围绕这个文件夹展开的。开始考试,由系统抽好题目后,单击“程序编写题”,仔细阅读题目,明确题目要我们做什么后,点击窗口左上方的“答题”,在下拉菜单中选择程序编写题,这时会打开VC6.0的程序界面,一大段繁杂的程序很无奈吧,别急,下面开始干活了。首先点击中的图标编译程序
2、,此时图标就被激活了,点击此图标运行程序(至于为什么要这么做,下面你就会知道的),出现如下图所示的窗口,大家可以看到,程序要求你输入m的值,随便输入一串字符后回车,然后随便按个键后这个窗口会关闭,以上步骤是做每道编程题前都必须做的,请大家谨记! 准备工作做好后,接下来进入考生文件夹,会看到in.dat和out.dat两个文件,我们就要对它们做手脚。首先用记事本打开in.dat文件,如图所示:大家看第一行文字:3 ABCDEFGHIJK,一开始看不懂这是啥意思,那么看看题目的要求吧:看出点啥没有?文字中的“3”代表的是m的值,即把第一到第三个字符“ABC”平移到字符串的最后,看例子也知道,“3”
3、后面的字符串就是我们所要处理的对象。打开out.Dat文件,如图所示,看到第一行的字符串,它就是对应in文件中的第一行的内容,根据题目要求,把out文件中的第一行文字改为“DEFGHIJKABC,以此类推,下面每一行都是对应in文件中的每一行的,按上述方法完全修改完毕后,保存并关闭记事本。(特别注意,完成修改后不要再运行程序,否则我们所做的工作就都泡汤了!)好了,交卷走人吧,你已经拿到了编程题的40分,只要前面再做对2个空你就通过了,哈哈,很爽吧!大部分的题目都可以用这种方法做,只要你对题目的意思明白的话就行了。二、复杂情况有些题目的答案需要以正确的格式出现才能得分。举一个例子,题目如下图所示
4、:看完题目后,照往常一样,运行程序,打开考生文件夹,打开in.dat文件,我们看到从NUM01NUM10的学生编号以及成绩,知道题目是要找出成绩最低的学生记录,于是打开out.dat文件,如图所示,这里多出了很多奇怪的符号,但是又似乎明白,是不是将NUM0I改为in.dat文件中的NUM06,然后后面的数字改为其成绩23就可以了呢?非也!这时需要注意答案的格式,应改为如下图所示的文字,将原有文件内容中的一连串烫字删掉,将01改为06,将后面的数字改为23,注意要和原文件的格式保持一致,NUM06和数字前都有一个空格,这些只要注意了就不会弄错。上面的例子还是常规的,大部分题目比这要复杂,需要小心
5、应付,只要心细,也不是难事。下面举一个稍微复杂的题目,如下图所示读懂题目后,运行程序,进入考生文件夹,打开in文件,看到不少数字,且每个数用空格隔开,然后打开out文件,依照题目要求,将in文件中的所有数都保留2位小数后填入out文件中,如下图1所示,果真是这样吗?肯定不是了,不然怎么叫复杂呢?大家千万不要被题目中的例子所迷惑,那到底哪里不对呢?从别的地方也得不到相关的格式信息啊!这里教大家一种非常有效的方法,可以防止被这种题目忽悠住。大家看看题目的源程序,注意如下图3所示的内容 图1 图2 图3注意这个NONO函数,看到这一行“fprintf(wf, %fn, fun(a) ;”,知道这是输
6、出函数,里面的参数中有个“%f”的格式输出,即输出实型量,也就是小数点后保留6位数字,可见这句内容与我们的答案格式有密切的联系,于是联系前面我们所做的工作,知道问题出在哪了吧?没错,应该把in文件中的每个数保留6位小数后,填入out文件中,如上图2所示,这样才是正确答案。大家通过这一题知道,当你对答案的格式不了解时,要从源程序中找答案,即找到NONO函数,查找里面的信息,然后就可以知道答案的具体格式了。在此对于这类需要注意答案格式的题目做出以下总结:1、常规的题目只需要结合in文件和out文件中内容的格式即可得出正确的答案格式。2、对于像上题这种特殊的题型,千万不要结合题目中的例子,而是要回归
7、到源程序,找NONO函数,根据其中的一些信息得出答案的正确格式。3、像这类特殊题型,源程序中都会有NONO函数,大家不用担心。4、大家只需要关注NONO函数中的有关输入和输出的语句,语句中的输入输出格式控制符就是关键,稍加思考后即可得出正确的答案格式。三、特殊情况下面来介绍编程题中的特殊题型,这里的特殊是指让你无从下手。大家来看这个题目:看懂题目的意思后,运行程序,进入考生文件夹,发现有啥不对劲的没有?没有in.dat文件啊!这可怎么办?in.dat文件是我们获取题目要我们处理的数据的必须,没有了in.dat文件还谈何做题。别急,天无绝人之路,还是需要回到源程序中,看到源程序中有这么一段内容大
8、家应该能猜出点啥了吧?没错,这就是题目要我们处理的数据,每一个花括号中的前面的编号就是每个学生的编号,后面的数字就是每个学生的成绩。知道了这些,我们就可以动手了。这里又出现了一个复杂的格式问题,题目中要求我们输出平均分,还要把低于平均分的学生人数和他们的成绩也求出来,那么这到底要怎么填入out文件中呢?还是看源程序,看到main函数,注意这段内容 out文件内容容易知道答案的格式是先输出低于平均分的学生人数n(整形),换行后输出平均分(总位数为7,保留三位小数的实型),再换行后按源程序中给出的数据的顺序输出所有低于平均分的学生成绩(总位数为4,保留一位小数的实型),这样就可以在out文件里填入
9、如上图的内容了,这道题就这样完成了,感觉有些难吧!但是这样的题目毕竟是少数啊,就算抽到这一题了,你不是也会了吗?最后,我们来介绍编程题中的特殊中的特殊,这是最究极的难啊!也只有一题,一般不会这么倒霉的,看题吧。题目如图所示,看懂题目后,运行程序,然后进入考生文件夹,发现没有in文件,于是回到源程序中,可是也没有找到要处理的数据,这可怎么办啊? 别急,还有办法,当点击感叹号图标运行程序后出现了一个cmd的黑色窗口界面,照我之前所说按键盘任意键使窗口关闭,可是现在重新看看这个窗口吧,上面可是有题目要求我们处理的数据啊,如下图所示:上面的一大堆数据就是我们要统计的各个年龄,下面的内容即为out文件中
10、的内容,结合题目的要求在out文件中做出相应的修改就OK了。这种题目的特殊中的特殊之处就在于比起上面的特殊题型,这种题目的数据来源非常隐蔽,数据竟然藏在我们平时极容易忽略的地方。所以机试的时候一定要仔细,还好这种题型只有这么一题。 编程题中还有一类题型,就是题目中给出公式让你计算的,但是公式十分复杂,计算起来相当有难度,遇到这种题目就放弃吧,但是也可以得到一些分数,因为题目中给出的例子是你要计算的其中一个数,答案就算直接给你了,直接填入out文件中就行了,可以得到一点分数,也许你就差这几分就及格了也说不定。如果你真想得满分的话,那就一个一个动手算吧(绝对理科生!),那可要花不少时间的,反正一切
11、都自己安排吧! 到这里,编程题的技巧讲完了,下面总结做编程题的大致步骤。首先要说明的是这种特殊方法的原理,我们做每道题之前运行程序的目的就是为了生成out文件,因为机试是由计算机来评分的,它评分的入口就是这个out文件,所以只要你的out文件里的内容和格式与标准答案一样,那么就是满分,我们正是利用了这一点,通过直接修改out文件,来欺骗计算机,从而达到看不懂程序也能得满分的目的。有的程序运行后也不会生成out文件,那就在考生文件夹下自己建立一个吧,接下来的操作是一样的。然后就是重头戏,你需要获取题目要求你处理的数据信息,获取方法前面已经详细介绍了,然后结合in文件中的内容格式以及NONO函数的关键字句得出答案的格式,然后填入out文件中,保存即可。(注意,有些题目out文件中的原有内容要删除然后重新写,因为其格式和内容都完全错误,而有的则只需要修改即可。)再强调一遍,保存并退出后千万不要再运行程序检查了,那样你所做的工作就泡汤了! 以上只是编程题的技巧,另外的两种题型也有一些小技巧。比如改错题可以运行程序后查看底下的运行记录,它会显示哪行出错了,结合记录修改吧! 终于结束了,相信大家只要弄懂这种方法的原理,再加上仔细小心的做题,机试通过绝对不是问题!在此我祝即将要参加计算机二级的朋友们都能够超水平发挥,考出高分偶!