单选题 下面的算法是计算不带节点的单链表长度,其中能正确执行的是______。
  • A. Function Length(L:Link) integer begin p:=L; j:=0; while p↑.next≠NIL DO [p:=p↑.next; j:=j+1 ] return(j) end;
  • B. Function Length(L:Link) integer begin p:=L; k:=0; while p≠NIL DO [p:=p↑.next; k:=k+1) return(k) end;
  • C. Function Length(L:Link)integer begin p:=L;k:=0; repeat k:=k+1; p=p↑.next until p=NIL return(k-1) end;
  • D. Function Length(L:Link)integer begin p:=L↑.next; k:=1; while p≠NIL DO [k:=k+1; p:=p↑.next] return(k) end;
【正确答案】 B
【答案解析】