「阅读程序」题答
核心要义:是设法弄清程序的功能,每个题目的写作目的。
一、方法
1、直接模拟:一般适用于T1、T2中的递归题,计算题等没有算法的题。
2、看出算法直接填:最佳方法。需要较多模板,但耗时少,准确率高。
3、模拟几次后找规律:不知道算法时采用(大胆猜测,小心求证),适用性较广,且一般都对,但耗时较多。
4、猜出算法直接填:已有一定错误几率,时间受限时优先采用。
5、换一个方法了解程序本质:特殊情况可用,基于一定的程序阅读能力。
二、步骤
1、通读程序
大致把握程序的目的和算法(如果看出来了,就可以直接做了)
如果没有什么想法,那么根据大致的进行一个猜测,给出一些可能性,并进一步阅读。
2、程序分段
根据程序的流程和框架,对程序进行模块化。
理清每一小段程序的功能和作用( 尝试给出每段循环,分支的意义 )。
3、变量追踪
(1)猜测变量的作用。
(2)观察变量出现位置(对于同一个变量,观察它在哪里声明,哪里修改,哪里用做条件)
(3)跟踪主要变量值的变化(尤其是用作条件的变量,它的值域范围和成立条件。答案变量的数值特点等。列表并找出规律)
三、注意
1、写下答案/输入输出
(1)看清楚输入(比如输出值后来又进行了什么处理在拿去算的)
(2)输出的格式(2016T1,序列末位“,”号)。
2、检查答案
再算一遍什么之类的
3、过程心态
简单题(递归)仔细,难题(思路)冷静。