一九九七年歌曲|一九九七年度高级程序员级下午试题

计算机技术 2020-12-23 网络整理 可可

【shitiku.jxxyjl.com--计算机技术】

试题一..joxue.
阅读以下说明和流程图,回答问题1至问题4,将解答写在答卷的对应栏内。..joxue.
[说明]..joxue.
某公司将其生产的商品通过若干个销售点进行销售。销售点在收到商品后的规定时间内把货款汇给公司。..joxue.
流程图描述了该公司发货、收款、催款的处理过程。其中部分文件和单据的格式如下:..joxue.
商品文件:商品代号,商品名称,单价..joxue.
销售点文件:销售点代号,销售点名称,地址..joxue.
发货单:发货日期,销售点代号,商品代号,数量,金额..joxue.
收款单:收款日期,销售点代号,商品代号,数量,金额,该商品的发货日期..joxue.
处理1~3把当天的发货单合并到发货文件。处理4~6把当天的收款单合并到收款文件。处理7在发货文件中当..joxue.
天已收款的记录上加上已收款标记。处理8和处理9在月末执行一次,主要用于输出月发货报、催款通知单、..joxue.
月收款报告。..joxue.
[问题1]..joxue.
详细写出流程图中商品文件和销售点文件对处理1的作用。..joxue.
[问题2]..joxue.
说明处理8为何要写发货文件。..joxue.
[问题3]..joxue.
说明处理9除制作月收款报告外还对收款文件做什么操作。..joxue.
[问题4]..joxue.
为了提高处理效率,流程图需作何改动。..joxue.

试题二..joxue.
阅读以下说明和流程图,回答问题1至问题3,将解答写在答卷的对应栏内。..joxue.
[说明]..joxue.
本流程图用来实现一组正整数的加权舍位平衡。已知正整数组..joxue.
A(a1,a2,…,an)..joxue.

满足条件a1= (n>3)。现将数组A中的每个数舍P位(P为正整数)后,得到另一正整数数组..joxue.
B(b1,b2,…,bn)..joxue.
它满足如下条件:..joxue.
1.b1是a1舍P位后四舍五入所得,即b1=INT(a1/10p0.5) ..joxue.
2.b1 = ..joxue.
3.bi=INT(ai/10P)+ei(i=2,3,…,n), 其中ei取值为0或1,当ei=1时,称ei是第i项数据的进位..joxue.
4.ei(i=2,3,……,n)之值根据余数MOD(ai,10P)乖上权fi(fi>0)后的数值大小来决定(其算法见流程图),..joxue.
权fi存放在数组F中。..joxue.
其中INT是取整数函数,MOD是余数函数。例如正整数78965舍P=3位,则..joxue.
INT(78965/103)=78..joxue.
MOD(78965,103)=965..joxue.
[问题1]..joxue.
填充流程图中①~④ ,把解答写在答卷纸的相应位置上。..joxue.
[问题2]..joxue.
若 N=5,P=1,A=(1586,985,26,247,328)..joxue.
F=(1,1,1,1,1)..joxue.
则数组B的值是多少?..joxue.
[问题3]..joxue.
若N=3,P=1,A=(41,16,25),F=(1,0,0),则数组B的值是多少?..joxue.

试题三..joxue.
阅读以下说明和流程图,回答问题1至问题3,将解答写在答卷的对应栏内。..joxue.
[说明]..joxue.
下面给出的是某房产管理系统的一套分层数据流图。其功能描述如下:..joxue.
系统随时根据住房送来的入信单更新信户基本信息文件;..joxue.
每月初系统根据物业管理委员会提供的月附加费(例如清洁费、保安费、大楼管理费等�)表和房租调整表,..joxue.
计算每家住户的月租费(包括月附加费),向住户发出交费通知单。住户交费时,系统输入交费凭证,核对后..joxue.
输出收据给住户;..joxue.
系统定期向物业管理委员会提供住房分配表和交费情况表;..joxue.
住户因分户或换房,在更新住户基本信息文件的同时,系统应立即对这些住户做月租费计算,以了结分户或换..joxue.
房前的房租。..joxue.
假定题中提供的顶层图是正确的,请回答下列问题:..joxue.
[问题1]..joxue.
指出哪张图中的哪些文件可不必画出。..joxue.
[问题2]..joxue.
指出在哪些图中遗漏了哪些数据流。回答时请用如下形式之一:..joxue.
××图中遗漏了××加工(或文件)流向××加工(或文件)的××数据流;..joxue.
××图中加工××遗漏了输入(或输出)数据流××。..joxue.
[问题3]..joxue.
指出加工2图中加工2.3能检查出哪些不合格交费凭证。..joxue.
[流程图]..joxue.
顶层图..joxue.

试题四..joxue.
在COMET型计算机上可以使用试卷上所附的CASL汇编语言。阅读下列程序说明和CASL程序,将应填入__(n)__..joxue.
处的字句,写在答卷的对应栏内。..joxue.
[程序说明]..joxue.
本子程序将一个非负二进整数翻译成五位十进整数字符。..joxue.
进入子程序时,在GR0中给出被翻译的非负二进整数,在GR2中给出存放五位十进整数数字字符的起始地址。..joxue.
十进制数字字符用ASCII码表示。当结果小于五位时,左边无空白符替换;当二进整数为零时,在(GR2)+4中..joxue.
存放0的ASCII码。..joxue.
数字字符0至9的ASCII码是48至57,空白符的ASCII码是32。..joxue.
[程序]..joxue.
START..joxue.
LEA GR1,0..joxue.
LEA GR3,32..joxue.
L1 ____(1)____..joxue.
JPZ L2..joxue.
ST GR3,0,GR2..joxue.
LEA GR2,1,GR2..joxue.
LEA GR1,1,GR1..joxue.
JNZ L1..joxue.
L2 ___(2)___..joxue.
L3 ___(3)___..joxue.
JMI L4..joxue.
SUB GR0,SN0,GR1..joxue.
LEA GR3,1,GR3..joxue.
___(4)___..joxue.
L4 ST GR3,0,GR2..joxue.
LEA GR2,1,GR2..joxue.
LEA GR1,1,GR1..joxue.
___(5)___..joxue.
JNZ L2..joxue.
RET..joxue.
SON NC 10000..joxue.
DC 1000..joxue.
DC 100..joxue.
DC 10..joxue.
DC 1..joxue.
END..joxue.

试题五..joxue.
阅读以下程序说明和FORTRAN程序,将应填入__(n)__处的字句,写在答卷的对应栏内。..joxue.
[程序说明]..joxue.
对称矩阵通常只需存储其下三角部分,例如,下列对称矩阵..joxue.
可用一维数组(1,2,3,4,5,6,7,8,9,10)存储其下三角部分。N阶对称矩阵下三角部分的元素个数..joxue.
为(N*N+N)/2。..joxue.
本子程序用来计算N阶对称矩阵A的平方B,B也是一个N阶对称矩阵。程序中X,Y是分别存入A,B下三角部分..joxue.
的一维数组。..joxue.
[程序]..joxue.
SUBROUTINE P(X,Y,N)..joxue.
INTEGER X(N*N+N)/2,Y(N*N+N)/2),S..joxue.
M=1..joxue.
DO 10 JJ=__(1)__..joxue.
DO 10 II =__(2)__..joxue.
I=II..joxue.
J=JJ..joxue.
L=__(3)__..joxue.
S=0..joxue.
DO 30 K=1,N..joxue.
S=S+X(I)*X(J)..joxue.
IF(____(4)____)THEN..joxue.
I=I+L..joxue.
ELSE..joxue.
I=I+1..joxue.
ENDIF..joxue.
IF(____(5)____)THEN..joxue.
J=J+L..joxue.
ELSE..joxue.
J=J+1..joxue.
ENDIF..joxue.
L=L-1..joxue.
30 CONTINUE..joxue.
Y(M)-S..joxue.
M=M+1..joxue.
CONTINUE..joxue.
END..joxue.

试题六..joxue.
阅读以下程序说明和C程序,将应填入__(n)__ 处的字句,写在答卷的对应栏内。..joxue.
[程序说明]..joxue.
某系统由n个部件组成,这些部件被物理地分成若干个分离的部件组。同一组内的两件部件i和j,它们或直接..joxue.
相连,或间接相连(部件i和部件j间接相连是指在这两件部件之间有一个部件相连序列,其中部件i和j分别..joxue.
与这相连序列中的某个部件直接相连)。系统的n个部件被统一编号为0,1,…,n-1。本程序输入所有直接..joxue.
相连的部件号对,分别求出系统各分离部件组中的部件号并输出。..joxue.
程序根据输入的直接相连的两件部件号,建立n个链表,其中第i个链表的首指针为s[i]..joxue.
,其结点是与部件i直接相连的所有部件号。..joxue.
程序依次处理各链表。在处理s[i]链表中,用top工作链表重新构造s[i]链表,使s[i]链表对应系统中的一个..joxue.
部件组,其中结点按部件号从小到大连结。..joxue.
[程序]..joxue.
# include ..joxue.
#define N 100..joxue.
typeef struct node{..joxue.
int data;..joxue.
struct node *link;..joxue.
} NODE;..joxue.
NODE*s[N];..joxue.
int i,j,n,t;..joxue.
NODE *q,*p,*x,*y,*top;..joxue.
main()..joxue.
{ printf(“Enter number of parts.”);..joxue.
scanf(“%d”,&n);..joxue.
for(i=0;idata=j; p->link=s[i]; s[i]=p;..joxue.
p=(NODE *)malloc(sizeof(NODE));..joxue.
P->data=i; p->link=s[j]; s[j];=p;..joxue.
}..joxue.
for(i=0;idata]!=NULL)..joxue.
{ /将j链表也移入工作链表*/..joxue.
for(p=s[j];p->link !=NULL;p=p->link);..joxue.
p->link=top; top=s[j];____(3)____;..joxue.
}..joxue.
/*在重新生成的第i链表中寻找当前结点的插入点*/..joxue.
for(y=s[i];____(4)____;x=y,y=y->link);..joxue.
if(y!=NULL && y ->data= =q->data)..joxue.
free(q);/*因重新生成的第i链表已有当前结点,当前结点删除* /..joxue.
else { /* 当前结点插入重新生成的i链表*/..joxue.
____(5)____;..joxue.
if(y= =s[i]) s[i]=q;..joxue.
else x->link=q;..joxue.
}..joxue.
}..joxue.
for(i=0;idata);..joxue.
q=p->link; free(p); p=q;..joxue.
}..joxue.
printf(“\n”);..joxue.
}..joxue.
}..joxue.

试题七..joxue.
阅读以下程序说明和FORTRAN程序,将应填入__(n)__处的字句,写在答卷的对应栏内。..joxue.
[程序说明]..joxue.
本子程序实现地图的着钯。在地图上,一个国家所着的颜色必须与所有相邻的国家所着的颜色不同。现已证明,..joxue.
仅需四种不同的颜色就能解决地图的着钯..joxue.
若地图上有N个国家,分别用1至N编号。子程序中用数组INDEX(N,2)和BORDER(M)存放N个国家的相邻情况。..joxue.
INDEX(I,1)和INDEX(I,2)分别表示与第I国相邻的国家编号在数组BORDER中的起始位置和终止位置,即..joxue.
这些邻国的编号存放在BORDER(INDEX(I,1))至BORDER(INDEX(I,2))中。例如,对应于图1所示的地图..joxue.
,数级INDEX和BORDER具有如下值:..joxue.
INDEX=..joxue.
BORDER-(2,3,4,5,1,3,1,2,4,5,1,3,5,1,3,4)..joxue.
子程序中分别用1,2,3,4代表四种不同颜色,着色结果存放在数组COLOR中,即数组元素COLOR(I)的值为..joxue.
第I个国家所着的颜色。..joxue.
子程序采用试控法找解。首先从第I个国家着第一种颜色开始,顺序为各个国家寻找着色方案。对第I个国家,..joxue.
当为它找到一种未被它的相邻国家着色的颜色时,就用该颜色对此国家着色,并准备处理下一国家;当不能为..joxue.
它找到一个未被它的相邻国家着色的颜色时,就回溯��即改变第I-1个国家的着色方案。直至最终为全..joxue.
部国家找到着色方案。..joxue.
[程序]..joxue.
SUBROUTINE P(INDEX,BORDER,COLOR,N,M)..joxue.
INTEGER INDEX(N,2),BORDER(M),COLOR(N)..joxue.
DO 10 I=1,N..joxue.
COLOR(I)=0..joxue.
I=1..joxue.
IF(__(1)__)THEN..joxue.
K=COLOR(I)+1..joxue.
IF(__(2)__)THEN..joxue.
J=INDEX(I,1)..joxue.
IF(J.LE.INDEX(I,2))THEN..joxue.
IF(__(3)__)THEN..joxue.
J=J+1..joxue.
GOTO 20..joxue.
ELSE..joxue.
K=K+1..joxue.
____(4)____..joxue.
ENDIF..joxue.
___-(5)____..joxue.
I=I+1..joxue.
GOTO 40..joxue.
ENDIF..joxue.
COLOR9I)=0..joxue.
_____(6)_____..joxue.
GOTO 40..joxue.
ENDIF..joxue.
IF(I.EQ.0)THEN..joxue.
WRITE(*,*)’NO SOLUTION’..joxue.
ENDIF..joxue.
END..joxue.

试题八..joxue.
阅读以下程序说明和C程序,将应填入__(n)__处的字句,写在答卷的对应栏内。..joxue.
[程序说明]..joxue.
一个相连的区域被不规则地分割成n个不同的小区域;每个小区域与若干其它小区域相邻接。现用cn种不同颜..joxue.
色为该区域着色,要求每个小区域着同一种颜色,相邻小区域着不同颜色。..joxue.
设小区域被顺序编号为0,1,…,n-1。每个小区域与其它小区域的邻接关系用两维数组bordering表示,元..joxue.
素bordering[i][j]表示i号小区域与j 号小区域之间的邻接关系:..joxue.
0 j小区域与i小区域不邻接 ..joxue.
bordering[i][j]= ..joxue.
1 j小区域与i小区域相邻接..joxue.
程序中,把计算结果存入于两维数组colored中,颜色编号为0,1,…,cn-1,元素colored[coler][j]的含义是..joxue.
0 j小区域不用颜色color着色..joxue.
colored[color][j]=..joxue.
1 j小区域用颜色color着色..joxue.
函数colorcountry(bordering,colored,n,cn)根据所给的小区域邻接关系数组bordering、小区域个数n 、..joxue.
颜色数cn,将找到的着色方案记录在数组colored中。函数采用试探法找解。首先从第一个小区域着第一种颜..joxue.
色开始顺序为各小区域找着色方案。对某个小区域,当为它找到一种未被它的相邻小区域着色的颜色时,就用..joxue.
该颜色对该小区域着色,并准备处理下一个小区域。当不能为某个小区域找到一个未被它的相邻小区域着色的..joxue.
颜色时,就回溯。如最终为全部小区域找到着色方案,函数返回1;否则,函数返回0。..joxue.
程序假定小区域个数不超过20,颜色数为4。..joxue.
[程序]..joxue.
#include..joxue.
#define n 20..joxue.
#define CN 4..joxue.
int colorcountry(int bordering[][N], int colored[][N], int n,int cn)..joxue.
{ int color,used,i,c;..joxue.
for(color=0;colorn;i++)colored[color][i]=0;..joxue.
c =0; /*从第1个小区域开始*/..joxue.
color =0; /*从着第1种颜色开始试控*/..joxue.
while(cc;i++)..joxue.
if(____(2)____)used=1;..joxue.
if(!used)break; /*当前颜色未被相邻小区域着色*/..joxue.
color++..joxue.
}..joxue.
if(!used)..joxue.
{ /*找到一种可用颜色,用此色着色,并准备处理下一个小区域*/..joxue.
____(3)____=1; color=0;..joxue.
}else{/*未找到一种可用颜色,回溯*/..joxue.
c--;if (c<0)return 0; /*发现没有解的情况*/ for(color=0;____(4)____;color++); ____(5)____=0 } } return 1; } print(int colored[ ][n],int n,int cn) /*输出结果*/ { char *colort[ ]={“RED”,”BLUE”,”GREEN”,”YELLOW”}; int color,i; for(color=0;colorn;i++)..joxue.
if(colored[color][i]) printf(“\t%d”,i);..joxue.
printf(“\n”);..joxue.
}..joxue.
}..joxue.
int colored[CN][N],bordering[N][N];..joxue.
main()..joxue.
{ int c,i,j,n;..joxue.
printf(“Enter number of areas.”); scanf(“%d”,&n);..joxue.
printf(“Enter bordering:\n”);..joxue.
for(i=0;in;j++)bordering[i][j]=0;..joxue.
for(i=0;i0 to next).\n”,i);..joxue.
scanf(“&d”,&j);..joxue.
while(j>=0)..joxue.
{ if(i !=j) bordering[i][j]=bordering[j][i]=1;..joxue.
scanf(“%d”,&j);..joxue.
}..joxue.
}..joxue.
if(colorcountry(bordering,colored,n,CN))..joxue.
print(colored,n,CN);..joxue.
else printf(“No Solution.\n”);..joxue.


本文来源:https://shitiku.jxxyjl.com/jisuanjijishu/274.html

Copyright @ 2011- 考试题库网 All Rights Reserved. 版权所有

免责声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。

 站长统计