?? 下午.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0055)http://i-math.zsu.edu.cn/os/Practice/level/2002CX-X.HTM -->
<HTML><HEAD><TITLE>水平考試歷年試題</TITLE>
<META http-equiv=Content-Language content=zh-cn>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR>
<META content=FrontPage.Editor.Document name=ProgId>
<STYLE>A:link {
COLOR: rgb(0,0,128); TEXT-DECORATION: none
}
A:active {
TEXT-DECORATION: none
}
A:visited {
TEXT-DECORATION: none
}
A:hover {
COLOR: rgb(255,0,0); TEXT-DECORATION: none
}
</STYLE>
</HEAD>
<BODY vLink=#0000ff bgColor=#ffffff topMargin=0>
<DIV align=center>
<CENTER>
<P></P></CENTER></DIV>
<DIV align=center>
<CENTER>
<P></P></CENTER></DIV>
<DIV align=center>
<CENTER>
<TABLE height=1 cellSpacing=0 cellPadding=0 width=730 border=0>
<TBODY>
<TR>
<TD width="100%" height=2> </TD></TR>
<TR>
<TD width="100%" height=126>
<TABLE cellSpacing=0 borderColorDark=#ffffff width="100%"
borderColorLight=#800000 border=1>
<TBODY>
<TR>
<TD width="100%">
<P align=center> </P>
<P align=center><FONT lang=ZH-CN face=宋體 color=#ff0000
size=6><B>2002年度程序員級下午試卷</B></FONT></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>試題一</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">閱讀下列算法說明和算法,將應填入</SPAN><U><SPAN
lang=EN-US> (n) </SPAN></U></FONT><SPAN
style="FONT-FAMILY: 宋體"><FONT
size=2>處的字句寫在答題紙的對應欄內。</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT
size=2>[</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">算法說明</SPAN></FONT><SPAN lang=EN-US><FONT
size=2>]</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">為便于描述屏幕上每個像素的位置,在屏幕上建立平面直角坐標系。屏幕左上角的像素設為原點,水平向右方向設為</SPAN><SPAN
lang=EN-US>x</SPAN><SPAN
style="FONT-FAMILY: 宋體">軸,垂直向下方向設為</SPAN><SPAN
lang=EN-US>y</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>軸。</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">設某種顯示器的像素有</SPAN><SPAN
lang=EN-US>128X128</SPAN><SPAN
style="FONT-FAMILY: 宋體">,即在每條水平線和每條垂直線上都有</SPAN><SPAN
lang=EN-US>128</SPAN><SPAN
style="FONT-FAMILY: 宋體">個像素。這樣,屏幕上的每個像素可用坐標</SPAN><SPAN
lang=EN-US>(x</SPAN><SPAN style="FONT-FAMILY: 宋體">,</SPAN><SPAN
lang=EN-US>y)</SPAN><SPAN
style="FONT-FAMILY: 宋體">來描述其位置,其中</SPAN><SPAN
lang=EN-US>x</SPAN><SPAN style="FONT-FAMILY: 宋體">和</SPAN><SPAN
lang=EN-US>y</SPAN><SPAN style="FONT-FAMILY: 宋體">都是整數,</SPAN><SPAN
lang=EN-US>0</SPAN><SPAN style="FONT-FAMILY: 宋體">≤</SPAN><SPAN
lang=EN-US>x</SPAN><SPAN style="FONT-FAMILY: 宋體">≤</SPAN><SPAN
lang=EN-US>127</SPAN><SPAN style="FONT-FAMILY: 宋體">,</SPAN><SPAN
lang=EN-US>0</SPAN><SPAN style="FONT-FAMILY: 宋體">≤</SPAN><SPAN
lang=EN-US>y</SPAN><SPAN style="FONT-FAMILY: 宋體">≤</SPAN><SPAN
lang=EN-US>127</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>。</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">現用一維數組</SPAN><SPAN
lang=EN-US>MAP</SPAN><SPAN
style="FONT-FAMILY: 宋體">來存儲整個一屏顯示的位圖信息。數組的每個元素有</SPAN><SPAN
lang=EN-US>16</SPAN><SPAN
style="FONT-FAMILY: 宋體">位二進位,其中每位對應一個像素,“</SPAN><SPAN
lang=EN-US>1</SPAN><SPAN
style="FONT-FAMILY: 宋體">”表示該像素“亮”,“</SPAN><SPAN
lang=EN-US>0</SPAN><SPAN
style="FONT-FAMILY: 宋體">”表示該像素“暗”。數組</SPAN><SPAN
lang=EN-US>MAP</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>的各個元素與屏幕上的像素相對應后,其位置可排列如下:</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT
size=2>MAP(0)</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">,</SPAN><SPAN lang=EN-US>MAP(1)</SPAN><SPAN
style="FONT-FAMILY: 宋體">,……,</SPAN></FONT><SPAN lang=EN-US><FONT
size=2>MAP(7)</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT
size=2>MAP(8)</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">,</SPAN><SPAN lang=EN-US>MAP(9)</SPAN><SPAN
style="FONT-FAMILY: 宋體">,……,</SPAN></FONT><SPAN lang=EN-US><FONT
size=2>MAP(15)</FONT></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>……</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT
size=2>MAP(1016)</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">,</SPAN><SPAN
lang=EN-US>MAP(1017)</SPAN><SPAN
style="FONT-FAMILY: 宋體">,……,</SPAN></FONT><SPAN lang=EN-US><FONT
size=2>MAP(1023)</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">下述算法可根據用戶要求,將指定坐標</SPAN><SPAN
lang=EN-US>(x</SPAN><SPAN style="FONT-FAMILY: 宋體">,</SPAN><SPAN
lang=EN-US>y)</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>上的像素置為“亮”或“暗”。</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">在該算法中,變量</SPAN><SPAN
lang=EN-US>X</SPAN><SPAN style="FONT-FAMILY: 宋體">,</SPAN><SPAN
lang=EN-US>Y</SPAN><SPAN style="FONT-FAMILY: 宋體">,</SPAN><SPAN
lang=EN-US>V</SPAN><SPAN style="FONT-FAMILY: 宋體">,</SPAN><SPAN
lang=EN-US>S</SPAN><SPAN style="FONT-FAMILY: 宋體">,</SPAN><SPAN
lang=EN-US>K</SPAN><SPAN style="FONT-FAMILY: 宋體">都是</SPAN><SPAN
lang=EN-US>16</SPAN><SPAN
style="FONT-FAMILY: 宋體">位無符號的二進制整數。數組</SPAN><SPAN
lang=EN-US>BIT</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>中的每個</FONT></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>元素</FONT></SPAN><FONT size=2><SPAN
lang=EN-US>BIT(K)(K=0</SPAN><SPAN
style="FONT-FAMILY: 宋體">,…,</SPAN><SPAN lang=EN-US>15)</SPAN><SPAN
style="FONT-FAMILY: 宋體">的值是左起第</SPAN><SPAN lang=EN-US>K</SPAN><SPAN
style="FONT-FAMILY: 宋體">位為</SPAN><SPAN lang=EN-US>1</SPAN><SPAN
style="FONT-FAMILY: 宋體">,其余位均為</SPAN><SPAN lang=EN-US>0</SPAN><SPAN
style="FONT-FAMILY: 宋體">的</SPAN><SPAN
lang=EN-US>16</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>位無符號二進制整</FONT></SPAN></P>
<P class=MsoNormal
style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><SPAN
style="FONT-FAMILY: 宋體"><FONT size=2>數,即</FONT></SPAN><FONT
size=2><SPAN lang=EN-US>BIT(K)</SPAN><SPAN
style="FONT-FAMILY: 宋體">的值為</SPAN></FONT><SPAN lang=EN-US><FONT
size=2>2</FONT></SPAN><SUP><SPAN lang=EN-US><FONT
size=2>l5-k</FONT></SPAN></SUP><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>。</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT
size=2>[</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">算法</SPAN></FONT><SPAN lang=EN-US><FONT
size=2>]</FONT></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>第</FONT></SPAN><FONT size=2><SPAN lang=EN-US>1</SPAN><SPAN
style="FONT-FAMILY: 宋體">步根據用戶指定像素的位置坐標</SPAN><SPAN
lang=EN-US>(x</SPAN><SPAN style="FONT-FAMILY: 宋體">,</SPAN><SPAN
lang=EN-US>y)</SPAN><SPAN
style="FONT-FAMILY: 宋體">,算出該像素的位置所屬的數組元素</SPAN><SPAN
lang=EN-US>MAP(V)</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>。這</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
</FONT></SPAN><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>一步的具體實現過程如下:</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
1</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">、將</SPAN><SPAN lang=EN-US>x</SPAN><SPAN
style="FONT-FAMILY: 宋體">送變量</SPAN><SPAN lang=EN-US>X</SPAN><SPAN
style="FONT-FAMILY: 宋體">,將</SPAN><SPAN lang=EN-US>y</SPAN><SPAN
style="FONT-FAMILY: 宋體">送變量</SPAN><SPAN
lang=EN-US>Y</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>;</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
2</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">、將</SPAN><SPAN lang=EN-US>Y</SPAN><SPAN
style="FONT-FAMILY: 宋體">左移</SPAN><U><SPAN lang=EN-US>
(1) </SPAN></U><SPAN
style="FONT-FAMILY: 宋體">位,仍存入變量</SPAN><SPAN
lang=EN-US>Y</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>;</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
3</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">、將</SPAN><SPAN lang=EN-US>X</SPAN><SPAN
style="FONT-FAMILY: 宋體">右移</SPAN><U><SPAN lang=EN-US>
(2) </SPAN></U><SPAN
style="FONT-FAMILY: 宋體">位,并存入變量</SPAN><SPAN
lang=EN-US>S</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>;</FONT></SPAN></P>
<P class=MsoNormal><SPAN lang=EN-US><FONT size=2>
4</FONT></SPAN><FONT size=2><SPAN
style="FONT-FAMILY: 宋體">、計算</SPAN><SPAN lang=EN-US>Y+S</SPAN><SPAN
style="FONT-FAMILY: 宋體">,存入變量</SPAN><SPAN lang=EN-US>V</SPAN><SPAN
style="FONT-FAMILY: 宋體">,得到像素的位置所屬的數組元素</SPAN><SPAN
lang=EN-US>MAP(V)</SPAN></FONT><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>。</FONT></SPAN></P>
<P class=MsoNormal><SPAN style="FONT-FAMILY: 宋體"><FONT
size=2>第</FONT></SPAN><FONT size=2><SPAN lang=EN-US>2</SPAN><SPAN
style="FONT-FAMILY: 宋體">步算出指定像素在</SPAN><SPAN
lang=EN-US>MAP(V)</SPAN><SPAN
style="FONT-FAMILY: 宋體">中所對應的位置</SPAN><SPAN
lang=EN-US>K(K=0</SPAN><SPAN style="FONT-FAMILY: 宋體">,…,</SPAN><SPAN
lang=EN-US>15)</SPAN><SPAN
style="FONT-FAMILY: 宋體">。這一步的具體實現過程如下:</SPAN></FONT><SPAN
lang=EN-US><FONT size=2> </FONT></SPAN></P>
<P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN
style="FONT-FAMILY: 宋體"><FONT size=2>將變量</FONT></SPAN><FONT
size=2><SPAN lang=EN-US>X</SPAN><SPAN
style="FONT-FAMILY: 宋體">與二進制數</SPAN><U><SPAN lang=EN-US>
(3) </SPAN></U><SPAN
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -