<p><font size="4" face="宋体">66.The following SAS program is submitted:<br>
<br>
data WORK.SALES; <br>
do Year=1 to 5; <br>
do Month=1 to 12;<br>
X + 1;<br>
end;<br>
end;<br>
run;<br>
<br>
How many observations are written to the WORK.SALES data set? </font></p>
<p><font size="4" face="宋体"> A. 0 <br>
B. 1 <br>
C. 5 <br>
D. 60</font></p>
<p><font size="4" face="宋体">Answer: B</font></p>
<p><font size="4" face="宋体">本文属于博客:</font><a href="http://hi.baidu.com/crack_man/home"><font size="4" face="宋体"><!-- m --><a class="postlink" href="http://hi.baidu.com/crack_man/home">http://hi.baidu.com/crack_man/home</a><!-- m --></font></a><font size="4" face="宋体"> 版权归作者所有,欢迎转载!如有转载,请务必注明出处!未经本文作者同意不得用于商业应用。</font></p>
<p><font size="4" face="宋体">这里主要考虑的是循环结束之后才输出到数据集WORK.SALES中。<br>
X + 1;<br>
等价于<br>
retain x 0;<br>
x=x+1;<br>
如下:<br>
year=1 month 1 x=1<br>
month 2 x=上一次X的值+1=2<br>
month 3 x=month为2时X的值,也就是2,所以此时X=3。<br>
注意这一语句执行一直在DO 循环中,X是不断的被改变的,所以当循环结束之后,X才输出到数据集中,所以只有一个观测对象。<br>
如何把每一步的X输出呢?<br>
可以思考一下。<br>
</font></p> <a href="http://hi.baidu.com/crack%5Fman/blog/item/fee6ba1f541798098718bf34.html">阅读全文</a>