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

📄 1996-ۤ-+

📁 这是软件水平考试 1996-1999年考试试题。
💻
📖 第 1 页 / 共 2 页
字号:
          <td height="10" colspan="2"></td>
        </tr>
        <tr> 
          <td colspan="2" height="40"> 
            <div align="center"> 
              <h3> 
                1996年度中程下午试卷及答案              </h3>
            </div>
          </td>
        </tr>
        <tr> 
          <td width="370" height="30"> 
            <div align="right" >( 
              2001-10-31 20:28:39              ) </div>
          </td>
          <td width="230"> 
            <div align="right" >本文浏览次数: 
              1511              次</div>
          </td>
        </tr>
        <tr> 
          <td  colspan="2" class="content"> 
            试题一
<br>
<br>阅读以下程序说明和C程序,将应填入程序中 (n) 处的字句,写在答卷的对应栏内。
<br>
<br>[程序说明]
<br>
<br>本程序为六个整型变量A、B、C、D、E、F输入整数,并按从大到小的顺序输出它们的名和值。如某次A、B、C、D、E、F的输入值为3、2、5、7、4、6,则程序将输出:
<br>
<br>D(7)F(6)C(5)E(4)A(3)B(2)
<br>
<br>[程序]
<br>
<br>#define N sizeof tb1/sizeof tb1[0]
<br>
<br>int A,B,C,D,E,F;
<br>
<br>struct ele{
<br>
<br>char vn;
<br>
<br>int *vp;
<br>
<br>}tb1[]={{‘A’,&A},{‘B’,&B},{‘C’,&C},
<br>
<br>{‘D’,&D},{‘E’,&E},{‘F’,&F}},
<br>
<br>t;
<br>
<br>main()
<br>
<br>{
<br>
<br>int k,j,m;
<br>
<br> 
<br>
<br>for(k=0;k<N;k++)
<br>
<br>{
<br>
<br>printf(“Enter data for%\n”,tb1[k].vn);
<br>
<br>scanf(“%d”,__(1)__);
<br>
<br>}
<br>
<br>m=N-1;/*采用冒泡法排序*/
<br>
<br>white (m>0)
<br>
<br>{
<br>
<br>for(k=j=0;j<m;j++) /*比较直至上论循环的最后交换前*/
<br>
<br>if(__(2)__)
<br>
<br>{
<br>
<br>t =tb1[j];
<br>
<br>tb1[j] =tb1[j+1];
<br>
<br>tb1[j+1]=t;
<br>
<br>__(3)__;
<br>
<br>}
<br>
<br>m=__(4)__;/*本框填m-1不给分*/
<br>
<br>}
<br>
<br>for(k=0;k<N;k++)
<br>
<br>printf(”%c(%d)”,____(5)____ ,____ (6)____)l
<br>
<br>printf(“\n”);
<br>
<br>}
<br>
<br> 
<br>
<br>试题二
<br>
<br>阅读以下程序说明和FORTRAN程序,将应填入程序中 (n) 处的字句,写在答卷的对应栏内。
<br>
<br>[程序说明]
<br>
<br>本程序用辛卜生公式计算下式的值
<br>
<br>为了使近似值达到指定精度EPS,程度中采取了逐步扩大n 的方法。
<br>
<br>[程序]
<br>
<br>PARAMETER (PI=3.14159265)
<br>
<br>EXTERNAL F
<br>
<br>____(1)____
<br>
<br>REAL EPS, S, X, X1
<br>
<br>WRITE (*.*) 'Please enter EPS:'
<br>
<br>READ (*,*)EPS
<br>
<br>X=0.0
<br>
<br>N=2
<br>
<br>N=2*N 
<br>X1=X
<br>
<br>CALL ____(2)____
<br>
<br>X=S/PI
<br>
<br>CALL ____(3)____
<br>
<br>X=X+S
<br>
<br>IF(____(4)____)GOTO 10
<br>
<br>WRITE (*,20)X
<br>
<br>FORMAT (1X, 'X= ',F10.7) 
<br>END
<br>
<br>FUNCTION F(X)
<br>
<br>____(5)____=1.0/(3.0+2.0*X)
<br>
<br>END
<br>
<br> 
<br>
<br>SUBROUTINE SIMPSO(A,B,N,G,S)
<br>
<br>H=(B-A)/2/N
<br>
<br>S=G(A)-G(B)
<br>
<br>DO 10 J=____(6)____
<br>
<br>S=S+4.0*G(A+J*H)+2.0*G(A+(J+1)*H)
<br>
<br> 
<br>
<br>CONTINUE 
<br>S=S*H/3.0
<br>
<br>END
<br>
<br> 
<br>
<br>试题三
<br>
<br>阅读以下程序说明和C程序,将应填入程序中 (n) 处的字句,写在答卷的对应栏内。
<br>
<br>[程序说明]
<br>
<br>本程序将自然数1,2,……,N2按蛇形方式逐个顺序存入N阶矩阵。
<br>
<br>例如,当N = 3和4时分别如图3.1和图3.2。
<br>
<br>7 13 14 16
<br>
<br>6 7 9 6 8 12 15
<br>
<br>2 5 8 2 5 9 11
<br>
<br>1 3 4 1 3 4 10
<br>
<br>图3.1 图3.2
<br>
<br>从an0开始到a0n为止(n = N-1)顺序填入自然数,交替地对每一斜列从左上元素向右下元素或从右下元素向左上元素存数。
<br>
<br>[程序]
<br>
<br> 
<br>
<br>#include <stdio.h>
<br>
<br>#define SIXE 10
<br>
<br>int a[SIZE] [SIZE], k;
<br>
<br>main()
<br>
<br>{ int I, j, n, N;
<br>
<br>for (N=3;N<=SIZE; N++)
<br>
<br>{ k = 1;
<br>
<br>makeArray (n=N+1);
<br>
<br>printf ("\nN=%d;\n",n+1);
<br>
<br>for (i=0;i<=n; i++)
<br>
<br>{ for (j=0; j<=n; j++)printf("%4d",a[i][j]);
<br>
<br>printf ("\A");
<br>
<br>}
<br>
<br>}
<br>
<br>}
<br>
<br>makeline (int row_start, int col_start, int row_end)
<br>
<br>{ /*完成矩阵一条斜线的整数填写*/
<br>
<br>int i, j, sign = ____(1)____;
<br>
<br>for (i=row_start, j=col_start;____(2)____ >=0; i +=sign,j +=sign)
<br>
<br>a[i][j] = k++;
<br>
<br>}
<br>
<br>makeArray (int n)
<br>
<br>{ /* 完成矩阵每条斜线的整数填写*/
<br>
<br>int d;
<br>
<br>for (d = 1; d <= ___(3)___; d++)
<br>
<br>if (d%2) makeline (____(4)____); else makeline(____(5)____);
<br>
<br>else
<br>
<br>if (d%2) makeline (____(6)____); else makeline(____(7)____);
<br>
<br>}
<br>
<br>试题四
<br>
<br>阅读以下程序说明和FORTRAN程序,将应填入程序中 (n) 处的字句,写在答卷的对应栏内。
<br>
<br>[程序说明]
<br>
<br>子程序ORDER根据N(N<100)位选手的成绩
<br>
<br>A ( I ) ( I = 1, 2, …, N )
<br>
<br>将每人的名次存入数组B的对应元素B (I) 中。成绩高的选手名次在前,成绩相同的选手名次相同。若有K位选手名次相同,则下一外名次增加K。例如,若8位选手的成绩依次为
<br>
<br>35,36,35,40,38,37,38,34
<br>
<br>则其名次依次为
<br>
<br>6, 5, 6, 1, 2, 4, 2, 8
<br>
<br>其中有两位并列第2,其下一个名次为4,没有第3名。
<br>
<br>程序首先找出与成绩最高的一位或几位选手对应的下标,并将B数组的对应元素置为第1名。然后,检查是否还有名次未定的选手,如有,找出这些选手中成绩最高的一位或几位,将其名次存入B数组的对应元素,继续同样步骤,直到排定全部选手的名次。
<br>
<br>[程序]
<br>
<br> 
<br>
<br>SUBROUTINT ORDER (A,B,N)
<br>
<br>INTEGER A(N),B(N),T(100)
<br>
<br>DO 10 I=1,N
<br>
<br>B(I)=0 
<br>NUM=1
<br>
<br>DO 50 I=1,N
<br>
<br>IF(____(1)____)THEN 
<br>MAX=A(I)
<br>
<br>K=1
<br>
<br>T(K)=I
<br>
<br>DO 30 J=I+1,N
<br>
<br>IF ((B(J).EQ.0).AND.(A(J).GE.MAX))THEN
<br>
<br>IF(A(J).GT.MAX)THEN
<br>
<br>MAX=A(J)
<br>
<br>____(2)____
<br>
<br>ENDIF
<br>
<br>____(3)____
<br>
<br>____(4)____
<br>
<br>ENDIF
<br>
<br>CONTINUE 
<br>DO 40 J=1,K
<br>
<br>____(5)____=NUM 
<br>NUM=____(6)____
<br>
<br>____(7)____
<br>
<br>ENDIF
<br>
<br>CONTINUE 
<br>END
<br>
<br> 
<br>
<br>试题五
<br>
<br>阅读以下程序说明和C程序,将应填入程序中 (n) 处的字句,写在答卷的对应栏内。
<br>
<br>[程序说明]
<br>
<br>将A、B、C、D、E、F 6个变量排成如图5.1所示的三角形,这6个变量分别取[1,6]上的整数,且互不相同。本程序找出使三角形三条边上的三个数之和相等的所有可能解。图5.2表示其中1个解。
<br>
<br>A 1
<br>
<br>B F 6 4
<br>
<br>C D E 3 2 5
<br>
<br>图5.1 图5.2
<br>
<br>程序采用试探法,即A、B、C、D、E、F的顺序试探找数。例如,已为A、B确定了数,就在尚未使用过的4个数中找一个数给C。当为F找到乘下的1个数时,程序就测试它们是否满足要求。满足要求的是解,将它们输出。当处理完一组数后,应回溯去找下一组可能的解。例如,处理完一组数值(1,2,4,6,5,3)后就回溯。
<br>
<br>1 2 4 6 5 3(←表示回溯)
<br>
<br>← ← ←
<br>
<br>下面便处理1 2 5 ……(例如1 2 5 3 4 6等)。上述试探法求解实际上是穷尽了6个数的所有排列。
<br>
<br>[程序]
<br>
<br> 
<br>
<br>#define N 6
<br>
<br>int A,B,C,D,E,F;
<br>
<br>int *pt[ ] = {&A,&B,&C,&D,&E,&F};
<br>
<br>main( )
<br>
<br>{ int b[N+1], j, k, c=0; /* c为找到的解的计数器 */
<br>
<br>for (j=1;j<=N,j++) b[j] = 0;/* 预置6个数均未被选用标志 */
<br>
<br>k = 0; j = 1;
<br>
<br>while (1)
<br>
<br>{ if (!b[j] )
<br>
<br>{ b[ ___(1)___ ] = 1; /* 登录选定的数,并置该数已被选用标志 */
<br>
<br>if (k < N-1)
<br>
<br>{ /* 准备为第 k+1 个数选择整数 */
<br>
<br>k++; j = 1;
<br>
<br>continue;
<br>
<br>}
<br>
<br>if (A+B+C == C+D+E && A+B+C == E+F+A)
<br>
<br>{ /* 测试6个数是否满足要求,满足是解,就输出 */
<br>
<br>printf ("%d\n\t\t%6d\n\t\t%4d%4d\n\t\t%2d%4d%4d\n\n",
<br>
<br>++c,A,B,F,C,D,E);
<br>
<br>scanf ("%*c"); /* 输出一个解后,按回车输出下一个解 */
<br>
<br>}
<br>
<br>do { /* 回溯 */
<br>
<br>b[*pt[___(2)___]] = 0;
<br>
<br>if (k<0) ___(3)___;
<br>
<br>for (j=*pt[k]+1; ___(4)___; j++); /* 寻找第k个数的可用数 */
<br>
<br>if (____(5)____) break;
<br>
<br>} while (1);
<br>
<br>if ( k < 0 ) break /* 已穷尽所有可能的选择 */
<br>
<br>b[*pt[ ____(6)____ ]] = 0 /* 清除原先所选用的数的标志 */
<br>
<br>j = ____(7)____; /* 调整第k个数可选用的数 */
<br>
<br>}
<br>
<br>else
<br>
<br>while (++j<=N&&b[j]); /* 调整 */
<br>
<br>}
<br>
<br>}
<br>
<br>试题六
<br>
<br>阅读以下程序说明和FORTRAN程序,将应填入程序中 (n) 处的字句,写在答卷的对应栏内。
<br>
<br>[程序说明]
<br>
<br>子程序PRINT对给定的N(2 < N < 50)和M(2 < M < 16),以M进制形式计算并输出N!的全部有效数字。
<br>
<br>因N!的值通常超出整型数最大值,故程序采用一维数组存储计算结果。数组A的每一个元素存放N!的M进制表示形式的一位数值。例如:当N=9,M=10时
<br>
<br>9! = 362880 (10)
<br>
<br>其存储形式为
<br>
<br>数组下标 1 2 3 4 5 6 7 8 ……
<br>
<br>值 0 8 8 2 6 3 0 0 ……
<br>
<br>当N = 3,M = 4时
<br>
<br>3! = 12 (4)
<br>
<br>其存储形式为
<br>
<br>数组下标 1 2 3 4 5 ……
<br>
<br>值 2 1 0 0 0 ……
<br>
<br>程序中,用加法代替乘法计算阶乘,(K-1)!作为加数暂存于数组B中,D是数组B中有效数字的长度。
<br>
<br>[程序]
<br>
<br> 
<br>
<br>SUBROUTINE PRINT (M,N)
<br>
<br>CHARACTER V*16
<br>
<br>INTERGER A(200), B(200), C, D
<br>
<br>DATA V/ '012345678ABCEDF '/
<br>
<br>DO 10 I = 1,200
<br>
<br>A ( I ) = 0
<br>
<br>B ( I ) = 0
<br>
<br>CONTINUE 
<br>A (1) = 1
<br>
<br>D = _______(1)_______
<br>
<br>DO 70 K=2,N
<br>
<br>DO 20 J=1,D
<br>
<br>____(2)____
<br>
<br>CONTINUE 
<br>DO 50 NUM=1.____(3)____
<br>
<br>I=1
<br>
<br>40 C=A(O)+B(I)
<br>
<br>A(I)=___(4)____
<br>
<br>I=I+1
<br>
<br>_____(5)____
<br>
<br>IF ( I. LT. MIN(D+K-1,200)) ____(6)____
<br>
<br>CONTINUE 
<br>IF ( A(I) . EQ. 0 ) THEN 
<br>I=I-1
<br>
<br>GOTO 60
<br>
<br>ENDIF
<br>
<br>____(7)____
<br>
<br>CONTINUE 
<br>WRITE ( *,100) N,M,(V(A(J)+1:A(J)+1),J=D,1,-1)
<br>
<br>FORMAT (1X, I2, '! ( ', I2 , ') = ',50A1/3(9X,50A1)) 
<br>RETURN
<br>
<br>END
<br>
<br> 
<br>
<br>试题七
<br>
<br>阅读以下程序说明和C程序,将应填入程序中 (n) 处的字句,写在答卷的对应栏内。
<br>
<br>[程序说明]
<br>
<br>某集团公司为发展生产向社会公开招聘M个工种的工作人员,每个工种各有不同的编号(1至M)和计划招聘人数。每位应聘者需申报两个工种,并参加公司组织的考试。公司将按应聘者的成绩从高分至低分的顺序进行排队录取。公司的录取原则是:从高分到低分依次对每位应聘者先按其第一志愿录取;当不能按其第一志愿录取时,便将他的成绩扣去5分后,重新排队,并按其第二志愿考虑录取。
<br>
<br>程序为输出各工种实际招聘的应聘人员,每个工种都保留一个录取者的有序队列。录取处理循环直至招聘额满或已对全部应聘者都作了录取处理。
<br>
<br>程序中,类型STU包含有应聘者的基本信息:编号、成绩、志愿、排队成绩和录取志愿号。数组rz [ ]的每个元素对应一个工种,包含有计划招聘人数和已录取的人数。
<br>
<br>[程序]
<br>
<br> 
<br>
<br>#include <stdio.h>
<br>
<br>#define M 20
<br>
<br>#define EDMARK 5
<br>
<br>typedef struct stu {
<br>
<br>int no, total, z [ 2 ], sortm, zi;
<br>
<br>struct stu *next;
<br>
<br>} STU;
<br>
<br>struct rzmode {
<br>
<br>int 1mt , count;
<br>
<br>STU *next;
<br>
<br>} rz [ m ];
<br>
<br>STU *head = NULL, *over = NULL;
<br>
<br>Int all
<br>
<br>FILE *fp;
<br>
<br>char dataf [ ] = "pp07.dat";
<br>
<br>print (STU *p)
<br>
<br>{ for (;p!=NULL; p = p -> next)
<br>
<br>printf ("%d(%d)\t", p->no, p->total);
<br>
<br>}
<br>
<br>insert (STU **p, STU *u)
<br>
<br>{ STU *v, *q;
<br>
<br>for (q = *p;q != NULL; v = =q , ____(1)____)
<br>
<br>if (q-> sortm < u->sortm) break;
<br>
<br>if ( q == *p) ___(2)____;
<br>
<br>else ____(3)____;
<br>
<br>u -> next = q ;
<br>
<br>}
<br>
<br>main ( )
<br>
<br>{ int zn, i, no, total, z1, z2 ;
<br>
<br>STU *p, *v, *q;
<br>
<br>fp = fopen (dataf, "r");
<br>
<br>if (fp == NULL)
<br>
<br>{ printf ("Can’t open file %s.\n",dataf);
<br>
<br>exit (0);
<br>
<br>}
<br>
<br>fscanf (fp, "%d", &zn);
<br>
<br>for (all=0, i=1; i <= zn; i++)
<br>
<br>{ fscanf (fp, “%d”, &rz [ i ].lmt );
<br>
<br>rz [ i ].count = 0; rz[ i ].next = NULL;
<br>
<br>all += ___(4)___;
<br>
<br>}
<br>
<br>for (;;)
<br>
<br>{ if ( ( fscanf (fp, "%d%d%d%d",&no,&total,&z1,&z2)) !=4)
<br>
<br>break;
<br>
<br>p = ( STU *) malloc (sizeof (STU));
<br>
<br>p -> no = no;
<br>
<br>p -> total = p -> sortm = total;
<br>
<br>p -> zi = 0; p -> z [ 0 ] = z1; p -> z [ 1 ] = z2;
<br>
<br>____(5)____;
<br>
<br>}
<br>
<br>fclose (fp);
<br>
<br>for (;all && head!=NULL;)
<br>
<br>{ p = head; head = head -> next;
<br>
<br>if (rz [ p -> z[p ->zi]].count < ___(6)___)
<br>
<br>{ rz [ p -> z[p ->zi]].count ++;
<br>
<br>insert (&rz [ p -> z [ p -> zi ] ].next, p);
<br>
<br>all --;
<br>
<br>continue;
<br>
<br>}
<br>
<br>if (p -> zi >= 1 )
<br>
<br>{ p -> next = over; over = p;
<br>
<br>continue;
<br>
<br>}
<br>
<br>p -> sortm -= DEMARK; _____(7)_____;
<br>
<br>insert (&head,p);
<br>
<br>}
<br>
<br>for ( i = 1; i <= zn; i++ )
<br>
<br>{ printf ("%d:\n",i);
<br>
<br>print ( rz [ i ].next);
<br>
<br>printf ("\n");
<br>
<br>}
<br>
<br>printf ("over:\n"); print (head);
<br>
<br>print (over); printf("\n");
<br>
<br>}
<br>
<br>试题八
<br>
<br>阅读以下程序说明和FORTRAN程序,将应填入程序中 (n) 处的字句,写在答卷的对应栏内。
<br>
<br>[程序说明]
<br>
<br>某肉猪养殖场为了保证生猪质量,对每次配种种猪的祖先进行族谱代系分析,以选择无血缘关系或尽可能远的远亲种猪进行配种。
<br>
<br>为了分析某个给定种猪的族谱代系,我们为该种猪及其每个祖先计算一个代系号,代系号的计算方法是:给定种猪自身的代系号为1,父母的代系号为其子女代系号加1。本题假定任一种猪的最大祖先代系号小于20。
<br>
<br>假定每只种猪有一能唯一标识的编号I ( 1 < I < 100 ),数组元素PARENT (1,I)、PARENT(2,I)分别存放种猪I的双亲编号,当不知其某个双亲来源时,其相应的双亲编号为零。
<br>
<br>函数 FINDLV 对给定的二只编号为MA、MB的种猪,查找它们是否至少存在一只相同的祖先。若存在,则返回相同祖先中最小的代系号;否则返回值为100。程序中用数组NOA、LEVA存放MA的所有祖先编号及其相应的代系号,TOPA为MA的祖先个数(含MA),数组NOB、LEVB存放MB的所有祖先编号及其相应的代系号,TOPB为MB的祖先个数(含MB)。
<br>
<br>子程序GF将种猪编号MAB的所有祖先编号存放于数组NO中,将其相应的代系号存放于数组LEV中。实现时,先将种猪编号MAB及代系号1分别存入NO(1)和LEV(1)中,然后按代系号由小到大的次序依次将其祖先(如有的话)的编号和代系号加入数组NO和LEV中,直到找遍所有的祖先。
<br>
<br>[程序]
<br>
<br> 
<br>
<br>FUNCTION FINDLV(MA,MB)
<br>
<br>INTEGER PARENT (2,100), FINDLV
<br>
<br>INTEGER NOA(100), LEVA (100), TOPA
<br>
<br>INTEGER NOB(100), LEVA (100),TOPB
<br>
<br>COMMON PARENT
<br>
<br>CALL GF (MA,NOA,LEVA,TOPA)
<br>
<br>CALL GF (MB,NOB,LEVB,TOPB)
<br>
<br>L = 100
<br>
<br>DO 10 I =1,TOPA
<br>
<br>DO 10 J =1, TOPB
<br>
<br>IF (NOA(I).EQ.NOB(J))THEN
<br>
<br>L = MIN (L,LEVA(I))
<br>
<br>____(1)____
<br>
<br>ENDIF
<br>
<br>CONTINUE 
<br>____(2)____
<br>
<br>RETURN
<br>
<br>END
<br>
<br> 
<br>
<br>SUBROUTINE GF (MAB,NO,LEV,TOP)
<br>
<br>INTEGER NO(100),LEV(100),PARENT(2,100),TOP,TOP1
<br>
<br>___(3)___
<br>
<br>TOP1=1
<br>
<br>TOP=1
<br>
<br>NO(TOP)=MAB
<br>
<br>LEV(TOP)=1
<br>
<br>IF(TOP1.LE.TOP)THEN 
<br>NOP=NO(TOP1)
<br>
<br>L=LEV(TOP1)
<br>
<br>TOP1=TOP1+1
<br>
<br>DO 20 I=1,2
<br>
<br>IF (____(4)____)THEN
<br>
<br>TOP = TOP+!
<br>
<br>NO(TOP)=___(5)___
<br>
<br>LEV(TOP)=___(6)___
<br>
<br>ENDIF
<br>
<br>CONTINUE 
<br>_____(7)_____
<br>
<br>ENDIF
<br>
<br>RETURN
<br>
<br>END
<br>
<br>答案:
<br>程序员下午试题共分四组,考生应在每一组中选答一题,共解答四题,满分为75分。第一组(试题一、二)每题15分;第二组(试题三、四)每题20分;第三组(试题五、六)每题20分;第四组(试题七、八)每题20分。 
<br>
<br>试题一(15分)
<br>
<br>(2分)(1)tbl [k].vp
<br>
<br>(3分)(2)*tbl[j].vp<*tbl[j+1].vp
<br>
<br>(3分)(3)k=j
<br>
<br>(3分)(4)k或k++或k--
<br>
<br>(2分)(5)tbl[k].vn
<br>
<br>(2分)(6)*tbl[k].vp
<br>
<br>其中(2),(5),(6)可答成
<br>
<br>(3分)(2)*tbl[j].vp>*tbl[j+1].vp
<br>
<br>(2分)(5)tbl[N-k-1].vn
<br>
<br>(2分)(6)*tbl[N-k-1].vp
<br>
<br>adw k (3),(4)可答成
<br>
<br>(3分)(3)k=j+1
<br>
<br>(3分)(4)k-1
<br>
<br>试题三(20分)
<br>
<br>(3分)(1)row___start<row___end?1:1
<br>
<br>或((row-end-row -start)>0)*2-1和其他等价形式
<br>
<br>(3分)(2)(row ___end-I)*sign
<br>
<br>(3分)(3)2*n+1
<br>
<br>(3分)(4)n,d-1,n+1-d
<br>
<br>(3分)(5)n+1-d,0,n
<br>
<br>(3分)(6)2*n-d+1,n,0
<br>
<br>(3分)(7)0,d-n-2*n-d+1
<br>
<br>试题五(20分)
<br>
<br>(3分)(1)*pt[k]=j
<br>
<br>(3分)(2)k--
<br>
<br>(3分)(3)break
<br>
<br>(3分)(4)j<=N& & b[j]<=N可答成j<=6或j<7;b[j]可答成b[j]= =1
<br>
<br>(3分)(5)j<=N或j<N+1或j<=6或j<7
<br>
<br>(3分)(6)k
<br>
<br>(3分)(7)*pt[k]+1
<br>
<br>试题七(20分)
<br>
<br>(2分)(1)q=q->next或q=v->next
<br>
<br>(3分)(2)*p=u
<br>
<br>(3分)(3)v->next=u
<br>
<br>(3分)(4)rz[I].lmt
<br>
<br>(3分)(5)insert(& head,p)
<br>
<br>(3分)(6)rz[p->[p->zi]].lmt
<br>
<br>(3分)(7)p->zi++或p->zi=1
<br>
<br> 
<br>
<br> 
<br>
<br>FORTRAN
<br>
<br>试题二(15分)
<br>
<br>(3分)(1)INTRINSIC TAN
<br>
<br>(3分)(2)SIMPSO(0.0,2.0,N,F,S)
<br>
<br>(3分)(3)SIMPSO(0.0,PI/4.0,N,TAN,S)
<br>
<br>(2),(3)数中缺小数占给2分
<br>
<br>(2分)(4)ABS(X-X1).GT.EPS 其中GT可答成GE
<br>
<br>(2分)(5)F
<br>
<br>(2分)(6)1,2*N-1,2或2*N-1,1,-2
<br>
<br>试题四(20)
<br>
<br>(2分)(1)B(I).EQ.0
<br>
<br>(3分)(2)K=0
<br>
<br>(3分)(3)K=K+1
<br>
<br>(3分)(4)T(K)=J(3)T (3)和(4)可答成T(K+1)=F和K=K+1
<br>
<br>(3分)(5)B(T(J))
<br>
<br>(3分)(6)NUM+K
<br>
<br>(3分)(7)GOTO60
<br>
<br>试题六(20分)
<br>
<br>(2分)(1)1
<br>
<br>(3分)(2)B(J)=A(J)
<br>
<br>(3分)(3)K-1或 K-1,1
<br>
<br>(3分)(4)MOD(C,M)或C-C/M*M
<br>
<br>(3分)(5)A(I)=A(I)+C/M
<br>
<br>(3分)(6)GOTO40
<br>
<br>(3分)(7)D=I
<br>
<br>试题八(20分)
<br>
<br>(3分)(1)L=MIN(L,LEVB(J))
<br>
<br>(3分)(2)FINDLV=L
<br>
<br>(2分)(3)COMMON PARENT
<br>
<br>(3分)(4)PARENT(I,NOP).GT.0或PARENT(I,NOP).NE.0
<br>
<br>(3分)(5)PARENT(I,NOP)
<br>
<br>(3分)(6)L+1或LEV(TOP-1)+1
<br>
<br>(3分)(7)GOTO10
<br>
<br>
<br>          </td>
        </tr>
        <tr> 
          <td  colspan="2">&nbsp; </td>
        </tr>
      </table>
      <!-- #EndEditable --></td>
  </tr>
  <tr> 
    <td><!-- #BeginLibraryItem "/Library/foot.lbi" -->
<table align=center border=0 cellpadding=0 cellspacing=0 width=100% vspace="0" 
hspace="0">
  <tbody> 
  <tr> 
    <td height=10> 
      <div align=center>
        <hr size=1>
      </div>
    </td>
  </tr>
  <tr>
    <td height=11 align="center">如有任何问题,请<a href="link.htm" target="_blank"><font color="#3333CC">联系我们</font></a></td>
  </tr>
  <tr> 
    <td height=22> 
      <div align="center"><a href="http://www.kaowang.com/">考网版权所有 </a> Copyight(c) 
        2000 kaowang.com. All Rights Reserved.</div>
    </td>
  </tr>
  </tbody> 
</table>
<!-- #EndLibraryItem --></td>
  </tr>
</table>
</body>
<!-- #EndTemplate -->
</html>

⌨️ 快捷键说明

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