⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 下午.htm

📁 二00二年度程序员级别考试上午、下午试题以及答案
💻 HTM
📖 第 1 页 / 共 4 页
字号:
            lang=EN-US>(a[i]</SPAN><SPAN style="FONT-FAMILY: 宋体">,…,</SPAN><SPAN 
            lang=EN-US>a[Count-1))</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">两个部分组成;初始时</SPAN><SPAN 
            lang=EN-US>i</SPAN><SPAN style="FONT-FAMILY: 宋体">等于</SPAN><SPAN 
            lang=EN-US>1</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">,每趟排序时将无序部分中的第一个元素</SPAN><SPAN 
            lang=EN-US>a[i]</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">插入到有序部分中的恰当位置,共需进行</SPAN><SPAN 
            lang=EN-US>count-1</SPAN></FONT><SPAN style="FONT-FAMILY: 宋体"><FONT 
            size=2>趟,最终使整个数组有序。</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><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>3.1]</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>void insert_sort(int a[] , int 
            count)</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>{&nbsp;&nbsp; int i, j, t;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp;&nbsp; for(i=1 ; i&lt;count ; 
            i++) </FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><SPAN 
            lang=EN-US><FONT size=2>{&nbsp; /*</FONT></SPAN><FONT size=2><SPAN 
            style="FONT-FAMILY: 宋体">控制</SPAN><SPAN lang=EN-US>a[i],</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">……</SPAN><SPAN lang=EN-US>, 
            a[count-1]</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">的比较和插入</SPAN></FONT><SPAN lang=EN-US><FONT 
            size=2>*/</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; t=a[i];</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; j=<U>&nbsp; (1)&nbsp; 
            </U>;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; while (j&gt;=0 &amp;&amp; 
            t&lt;a[j])</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; {&nbsp; /*</FONT></SPAN><FONT 
            size=2><SPAN style="FONT-FAMILY: 宋体">在有序部分中寻找元素</SPAN><SPAN 
            lang=EN-US>a[i]</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">的插入位置</SPAN></FONT><SPAN lang=EN-US><FONT 
            size=2>*/</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
            <U>&nbsp;&nbsp;&nbsp;(2)&nbsp;&nbsp; </U>;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><I><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp; 
            </FONT></SPAN></I><SPAN lang=EN-US><FONT 
            size=2>&nbsp;j--;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; }</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; <U>&nbsp;&nbsp;(3)&nbsp; 
            </U>;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 42.75pt"><SPAN 
            lang=EN-US><FONT size=2>}</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 17.95pt"><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>3</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">.</SPAN><SPAN lang=EN-US>2</SPAN><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>&nbsp;&nbsp;&nbsp; 
            </FONT></SPAN><FONT size=2><SPAN 
            style="FONT-FAMILY: 宋体">递归函数</SPAN><SPAN lang=EN-US>invert(int 
            a[]</SPAN><SPAN style="FONT-FAMILY: 宋体">,</SPAN><SPAN lang=EN-US>int 
            k)</SPAN><SPAN style="FONT-FAMILY: 宋体">将指定数组中的前</SPAN><SPAN 
            lang=EN-US>k</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>3</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">.</SPAN></FONT><SPAN lang=EN-US><FONT 
            size=2>2]</FONT></SPAN></P>
            <P class=MsoNormal><SPAN lang=EN-US><FONT size=2>void invert(int a[] 
            , int k);</FONT></SPAN></P>
            <P class=MsoNormal><SPAN lang=EN-US><FONT size=2>{&nbsp;&nbsp; int 
            t;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>if (<U>&nbsp; (4)&nbsp; </U>)&nbsp; 
            {</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp; invert(<U>&nbsp; (5)&nbsp; 
            </U>);</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp; t=a[0];</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp; a[0]=a[k-1];</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp; a[k-1]=t;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>}</FONT></SPAN></P>
            <P class=MsoNormal><SPAN lang=EN-US><FONT size=2>}</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>&nbsp;&nbsp;&nbsp; 
            </FONT></SPAN><FONT size=2><SPAN 
            style="FONT-FAMILY: 宋体">阅读下列程序说明和</SPAN><SPAN 
            lang=EN-US>C</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">代码,将应填入</SPAN><U><SPAN lang=EN-US>&nbsp; 
            (n)&nbsp; </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><SPAN lang=EN-US>4</SPAN><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>&nbsp;&nbsp;&nbsp; 
            </FONT></SPAN><FONT size=2><SPAN 
            style="FONT-FAMILY: 宋体">本程序用古典的</SPAN><SPAN 
            lang=EN-US>Eratosthenes</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">的筛法求从</SPAN><SPAN lang=EN-US>2</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">起到指定范围内的素数。如果要找出</SPAN><SPAN 
            lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">至</SPAN><SPAN 
            lang=EN-US>10</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">中的素数,开始时筛中有</SPAN><SPAN 
            lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">到</SPAN><SPAN 
            lang=EN-US>10</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">的数,然后取走筛中的最小的数</SPAN><SPAN 
            lang=EN-US>2</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">,宣布它是素数,并把该素数的倍数都取走。这样,第一步以后,筛子中还留下奇数</SPAN><SPAN 
            lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">、</SPAN><SPAN 
            lang=EN-US>5</SPAN><SPAN style="FONT-FAMILY: 宋体">、</SPAN><SPAN 
            lang=EN-US>7</SPAN><SPAN style="FONT-FAMILY: 宋体">、</SPAN><SPAN 
            lang=EN-US>9</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">:重复上述步骤,再取走最小数</SPAN><SPAN 
            lang=EN-US>3</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">,宣布它为素数,并取走</SPAN><SPAN 
            lang=EN-US>3</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">的倍数,于是留下</SPAN><SPAN 
            lang=EN-US>5</SPAN><SPAN style="FONT-FAMILY: 宋体">、</SPAN><SPAN 
            lang=EN-US>7</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">。反复重复上述步骤,直至筛中为空时,工作结束,求得</SPAN><SPAN 
            lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">至</SPAN><SPAN 
            lang=EN-US>10</SPAN></FONT><SPAN style="FONT-FAMILY: 宋体"><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>sieve</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">表示筛子,数组元素</SPAN><SPAN 
            lang=EN-US>sieve[i]</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">的值为</SPAN><SPAN lang=EN-US>1</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">时,表示数</SPAN><SPAN lang=EN-US>i</SPAN><SPAN 
            style="FONT-FAMILY: 宋体">在筛子中,值为</SPAN><SPAN 
            lang=EN-US>-1</SPAN><SPAN style="FONT-FAMILY: 宋体">时表示数</SPAN><SPAN 
            lang=EN-US>i</SPAN></FONT><SPAN style="FONT-FAMILY: 宋体"><FONT 
            size=2>已被取走。</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><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>4]</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>#include &lt;stdio.h&gt;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>#define MAX 22500</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>main()</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>{&nbsp; unsigned int i , range , factor , k 
            ;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; int sieve[MAX] 
            ;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; printf(“please input the range 
            : ”);</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; scanf(“%d”,&amp;range);&nbsp; 
            /*range</FONT></SPAN><FONT size=2><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 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; for (i=2 ; i&lt;=range ; 
            i++)&nbsp; /* </FONT></SPAN><FONT size=2><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 
            lang=EN-US><FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
            <U>&nbsp;&nbsp;&nbsp;(1)&nbsp; </U>;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; factor=2 ;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; while (factor&lt;=range)&nbsp; 
            {</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (<U>&nbsp; 
            (2)&nbsp; </U>)&nbsp;&nbsp; {&nbsp;&nbsp; /*</FONT></SPAN><FONT 
            size=2><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 
            lang=EN-US><FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
            printf(“%d\t”,factor);</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
            k=factor;</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 21.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
            while (k&lt;=range)&nbsp; </FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 63.75pt"><SPAN 
            lang=EN-US><FONT size=2>{&nbsp; /*</FONT></SPAN><FONT size=2><SPAN 
            style="FONT-FAMILY: 宋体">移走素数的倍数</SPAN></FONT><SPAN lang=EN-US><FONT 
            size=2> */</FONT></SPAN></P>
            <P class=MsoNormal style="TEXT-INDENT: 63.75pt"><SPAN 
            lang=EN-US><FONT size=2>&nbsp;&nbsp; <U>&nbsp;&nbsp;&nbsp;(3)&nbsp; 
            </U>;&nbsp;&nbsp; /*</FONT></SPAN><FONT size=2><SPAN 
            style="FONT-FAMILY: 宋体">筛中的个数减一</SPAN></FONT><SPAN lang=EN-US><FONT 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -