更多"附加段中有一个未排序的数组,数组中的第一个元素是该数组的长度。要删除数"的相关试题:
[填空题]附加段中有一个未排序的数组,数组中的第一个元素是该数组的长度。要删除数组中与数据段中X相同的元素,程序如下。填写空格处使程序完整,并回答程序后的问题。空白6处要填写的指令是 【6】 。
DSEG SEGMENT
X DW 33
DSEG ENDS
ESEG SEGMENT
ARR DW 6,45,2l,68,33,87,74
ESEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG,ES:ESEG
MAIN PROC FAR
START: PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DSEG
MOV DS,AX
MOV AX,ESEG
MOV ES,ESEG
MOV AX,X
LEA DI,ARR
【6】
RET
MAIN ENDP
DEL PROC NEAR
【7】
PUSH DI
MOV CX,ES:[DI]
ADD DI,2
REPNE SCASW
JE DELETE
POP DI
JMP EXIT
DALETE:// JCXZ LAST
AGAIN: MOV BX,ES:[DI]
MOV ES:[DI-2],BX
ADD DI,2
LOOP AGAIN
LAST: POP DI
DEC WORD PTR ES:[DI]
EXIT: RET
CSEG ENDS
END START
[单项选择]快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了(1)算法设计策略。已知确定基准元素操作的时间复杂度为Θ(n),则快速排序算法的最好和最坏情况下的时间复杂度为(2)。空白(1)处应选择()
A. 分治
B. 动态规划
C. 贪心
D. 回溯
[填空题]设有一个10个元素的数组,下列程序将该数组的第一个元素与第十个元素交换,第二个元素与第九个元素交换……,第五个元素与第六个元素交换,请补充完该程序。
Private Sub Commnd1_Click( )
Dim a(1 To 10)As Integer
Dim i As Integer
Dim p As Integer
Dim t As Integer
Dim j As Integer
For i=1 To 10
a(i)=i
Next i
For j=1 To 5
【9】
【10】
【11】
Next j
For i=1 To 10
Print a(i)
Next i
End Sub
[填空题]下列程序是将数组a的元素倒序交换,即第一个变为最后一个,第二个变为倒数第二个,依此类推。设数组中有8个元素。完成下列程序。
Private Sub OrderChange(a( ))
Dim i As Integer, Temp As Integer
For i = 1 To 4
Temp = a(i)
______
______
Next i
End Sub
[填空题]【说明】
输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
【函数】
main ( )
int number[10];
input (number);
max min (number);
output (number);
input (number)
int number[10];
int i;
for ( i=0;i<9;i++ )
scanf ( "%d,",&number[i] );
scanf ( "%d",&number[9] );
max_min ( array )
int array[10];
int *max,*min,k,1;
int *p,*arr_end;
arr end= (1) ;
max=min=array;
for ( p= (2) ;p<arr_end;p++ )
if( (3) ) max=p;
else if ( *p<*min ) min=p;
(4) ;
l=*min;
(5) ;array[0]=1;1=*p;
*p=array[9];array[9]=k;k=*p;
return;
output ( array )
int array[10];
int *p;
for ( p=array;p<array+9;p++ )
printf ( "%d,",*p );
printf ( "%d/n",array[9] );
[填空题]数据段中有一个字数组,其首地址放在SI寄存器中。数组的第一个字中存放着该数组的长度。阅读程序并填空,使程序完整并能正常运行:
DSEG SEGMENT ;数据段
COUNT DW
ADDR DW
DSEG ENDS
CSEG SEGMENT ;代码段
MAIN PROCFAR
START PUSH DS
MOV AX, 0
PUSH AX
MOV AX, DSEG ;初始化DS
MOV DS, AX
MOV ADDR, SI ;将数组的首地址送到ADDR中
MOV CX, [SI] ;数组的长度送到CX中
MOV COUNT, CX ;数组长度送计数器
AGAIN1: MOV BX, 1 ;设标志位
DEC COUNT ;计数器的值减1
JZ EXIT ;等于0,则退出程序
MOV CX, COUNT ;计数器的值送CX
MOV SI, ADDR ;指针指向数组的首地址
AGAIN2: ADD SI, 【6】
MOVAX, [SI]
CMP [SI+2],AX ;前两个元素进行比较
JAE NEXT ;第二个大,则跳转到NEXT去执行
XCHG [S1+2],AX ;否则,交换两个存储单元的内容
MOV [SI], AX
MOV BX, 0 ;有交换的话,标志位置0
NEXT: LOOP AGAIN2 ;继续进行内循环
CMP BX, 0
JE AGAIN1
EXIT: MOV SI, ADDR ;否则,结束程序并将数组首地址送回SI
RET
MAIN ENDP
CSEG ENDS
END START
[填空题]设有二维数组A[0…9,0…19],其每个元素占两个字节,数组按列优先顺序存储,第一个元素的存储地址为100。那么,元素A[6,6]的存储地址为______。
[填空题]设有二维数组A[0.. 9,0..19],其每个元素占两个字节, 数组按列优先顺序存储,第一个元素的存储地址为100,那么元素A[6,6]的存储地址为 【3】 。
[单项选择]一维数组第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是()。
A. 110
B. 108
C. 100
D. 120
[填空题]设有二维数组A[0…9][0…19],其每个元素占两个字节,数组按列优先顺序存储,第一个元素的存储地址为100,那么元素A[6,6]的存储地址为______。
[填空题]设有二维数组A[0..9,0..19],其每个元素占两个字节,数组按列优先顺序存储,第一个元素的存储地址为100,那么元素A[6,6]的存储地址为______。