试卷详情
-
计算机水平考试初级程序员2006年上半年下午真题
-
[简答题][Vsual Basic 程序代码]
Private Sub CmdSelect_Cliek( )
For i = O To List2.ListCount - 1
If Listl.Text = List2.List(i) Then Exit Sub ’不要重复选择
Next i
List2.Addltem (1) ’在List2中增添List1中所选的项
End Sub
Private Sub CrndSelAll_Click( )
List2.Clear ’先删除List2中的已有项
For i = 0 To (2) ’对List1中所有各项做循环处理
List2.Addltem (3) ’将该项增添到 List2中
Next i
End Sub
Private Sub CmdDelete_Cliek( )
If List2.Listlndex >= O Then ’如果List2中有选中的项,
List2.Removeltem (4) ’则删除所选的项
End If
End Sub
Private Sub CmdDelAll_Cliek( )
(5)
End Sub
-
[简答题]Dim (2) ’声明全局变量
Private Sub Form_Load( )
Scale(0,0)-(20,6) ’定义窗体的坐标系统
End Sub
Private Sub CmdStart_Click( )
x=0
MMC.DevkeType=’’WaveAudio’’ ’设置多媒体设备类型
MMC.FileName=’’两只蝴蝶.wav’’ ’确定声音文件名
MMC.Cornmand=’’Open’’ ’打开多媒体设备
MMC.Command=’’P1ay’’ ’启动声音的播放
Timer1.Enabled=True ’打开定时器
End Sub
Private Sub Timer1_Timer( )
Ifx>20 Thenx=x-20 ’蝴蝶飞到右边界后再回到左边界
Image1.Left=x ’动态调整蝴蝶框的位置
Imagel.Top= (3)
Image2.Len=x
lmage2.Top= (4)
x=x+0.1 ’确定蝴蝶下一步飞行位置
End Sub
Private Sub CmdStop_Click( )
(5)
Image1.Left=0 ’蝴蝶位置初始化
Image1.Top=2
Image2.Left=0
Imagc2.Top=3
MMlC.Command=’’Stop’’ ’停止播放
MMC.Command=’’Ciosc’’ ’关闭多媒体设备
End Sub
-
[简答题][C语言函数]
intB_s[DAYS+1]; /*记录成本最小的生产计划,B_s[0]不用,DAYS定义为天数*/
double find_a_plan(FILE *int)
{ iht P_nm[DAYS+1],acc_req[DAYS+1];
int i,tag = 0,acc_qty = 0;
double mincost = 1.0e20,cost_Produce,cost_Keep;
for(i = 1;i <= DAYS; i++) { /*第i天时的累计零件需求量存入acc rcq[i] */
acc_qty += data[i].Qty_req;
acc_req[i] = acc qty;
}
while (!feof(int)) {
for(i = 1; i <= DAYS; i++ )/*读入一个生产计划,第i天的产量存入P_num[i]*/
if (!feof(inf))
fseant[inf,"%d",&P_num[i]);
tag = 0; cost_Produce = 0; cost_Keep = 0;
for(i = 1, (1) ;i <= DAYS; i++){ /*考查当前的生产计划*/
acc qty += P_num[i]; /* acc_qty 计录到第i天时的累计零件生产量*/
if (acc_qty < acc_req[i]) {/*当前生产计划不能满足需求*/
tag = 1; break;
}/*if*/
cost_Produce += (2) ; /*计算当前生产计划的总需件价格*/
cost_Keep += ( (3) ) * data[i],Keeping_fee;
}/*for*/
if( (4) ) /* 若当前生产计划不可行,则继续读取下一计划*/
continue;
if( (5
-
[简答题][C语言函数]
bool Del_elem(STACK*s,char para_ch)
{
STACK s_bgk; /*定义临时工作栈s_bak,*/
char ch;
bool tag=FALSE;
(1) /*初始化临时工作栈s_bak*/
/*,将栈*s中所有比para_ch更接近栈顶的元素暂时存放在临时工作栈s bak中*/
while(!IsEmpty(*s)){
ch= (2) ; /*取栈顶元素*/
Pop(s);
if(ch=para_ch){
tag=TRUE;
break;
}
(3) ;
}
/*将暂存于临时工作栈s_bak中的元素存回栈*s*/
while( (4) )
ch=Top(s_bak);
(5)
Push(s,ch)
}
return tag;
}
-
[简答题][问题3]
在上述流程图2-1和图2-2的算法中,
(1)矩阵A第i行第j列的元素A(i,j)被复制到矩阵B中的哪个位置
(2)A(i,j)后来又被复制到矩阵C中的哪个位置
(3)填补流程图2-2中的空缺。
-
[简答题][C语言函数]
long change(int num)
{
ind,m=num;
long result mul;
if (num<=0|| (1) /*若num不大于0或num的位数大于4,则返回-1*/
retum-1;
mul=1;
(2)
while(m>0){
d=m%10;
m= (3) ;
result=result+( (4) ) *mul;
mul= (5) ;
}
return result;
}