CSP-J初赛考试答题时间通常为120分钟,总体来说,时间并不宽裕。
考试通常包含42道题左右,分三大类:①单项选择题;②阅读程序题(一般含3个题);③完善程序题。当然,其中的阅读程序题和完善程序题,也都是判断或者选择类的题。
从整体来讲,答题不要空着,遇到不会的,就算是瞎蒙也一定要填上一个答案,万一蒙对了就能得分。
答题时,建议以下这样的答题步骤:
(1)单项选择题要尽快完成;
(2)阅读程序题一般包含3~4个题,答题技巧如下:
(2.1)先搭眼睛扫一下看有没有哪个题的代码自己感觉比较熟悉,可以很快做答,如果有,可以集中精力把这个题完成;
(2.2)如果没有感觉比较熟悉的题,就观察看是否有感觉代码比较简单的可以很快完成的题,如果有,可以集中精力尝试完成;
(2.3)如果感觉没有熟悉的题目,代码难度感觉也挺大,先整个跳过阅读程序题,去完成完善程序题;
(3)完善程序题一般包含三个,优先回答自己熟悉的,如果没有熟悉的,花一些时间进行思考,如果思考不出,结合现有代码蒙答案是可以的,还是本着不要留空的原则把整个完善程序题完成;
(4)回头(最后)搞阅读程序题。
在计算机科学和软件工程领域,阅读代码通常比自己写代码难度更大,更具有挑战性。主要是因为代码本身的复杂性、代码缺乏注释、变量取名随意、代码风格多样性以及面临理解他人思维模式的挑战。
之所以在最后搞阅读程序题,是因为这类题往往最花时间,最耗费心血,一般被卡住,很容易影响解答后面题目的状态和情绪。
答题的原则是先挑看上去代码最简单、行数最少的阅读程序题先做。针对一个程序题,遵循如下做题步骤:
(4.1)先看一看与该程序相关的所有判断题和选择题,有时候通过这些线索就可以回答出某些题,比如选择题中出现几个程序运行结果供选择,但判断题却描述了另外一种不可能出现的结果,那么显然这个判断题的描述就是错的;
(4.2)先别陷入细节,从宏观看一看代码大概执行了哪些核心代码。观看局部代码时,多猜测,猜测是解答这类题的最常用办法,如果实在无法猜出,在不得已的情况之下,尝试在脑海中运行程序,通过草稿纸记录一些中间结果,尝试找到一些规律或者特点,从而选出正确的答案;
(4.3)实在没有头绪时,直接选择一个看上去相对有些眼缘的答案,保证所有答题不留空。
在本书的学习中,如果读者对某个阅读程序题比较陌生没有头绪,也正可以借着本书好好理解、好好体会该题,以增加自己的知识积累和应对考试题的经验。