学分指南  学分抽奖  学分竞答  学分竞猜
普通帖程序员每日一练(46)
dzq1943 2008-11-13 20:58:51 [个人资料] [Blog]
[回复] 楼主 分数:0

【说明】

函数move(int*aint n)用于整理数组a[]的前n个元素,使其中小于0的元素移到数组的前端,大于0的元素移到数组的后端,等于0的元素留在数表中间。

a0~alow-1]小于0(初始为空)alow~ai-1]等于0(初始为空)ai~ahigh]还未考察,当前考察元素为ai]。ahigh+1]~an-1]大于0(初始为空)

【函数】

move(int*aint n)

{

int ilowhight

low=i=0high=n-1

while(  (1)  )

if(ai<0)

{

t=ai];ai=alow];alow=t

  (2)  i++;

}

else if(  (3)  )

{t=ai];ai=ahigh];ahigh=t

  (4) 

}

else  (5) 

}

 
【答案】
(1)i<=high
(2)low++
(3)ai>0
(4)high--
(5)i++
  
handan7 2008-11-13 22:11:10 [个人资料] [Blog]
[回复] [引用] 第1楼 得分:0
C语言还得看看··再来做这个题···
  
xhzxrzx 2008-12-5 0:40:27 [个人资料] [Blog]
[回复] [引用] 第2楼 得分:0
Try my best!
  
广告也精彩
 
1
快速回复:
注意:本论坛里的任何言论仅代表发言者个人的观点,与学赛网立场无关。请对您的言论负责,遵守中华人民共和国有关法律、法规。如果您的帖子违反学赛网论坛规则,将立即删除;如果再次发布,则封IP。
loading...