您的位置:首页 > 职场人生

前天题目的答案(这两天出去面试了,没上,哈哈)

2006-12-20 15:06 246 查看
 1、 P(s):S=S-1;
           if(s>0),则该进程继续执行;否则该进程置为等待状态,排入等待队列。
  V(s):S=S+1;
           if(S>0), 则该进程继续执行;否则释放队列中第一个等待信号量的进程。

2、以下是排序的部分,
TYPE  compare(TYPE *head)
{TYPE *pb,*pf,*r;
int temp,i=0;
char str1[20],str2[20];
pb=head;
pf=pb->next;
while(((n+m)*(n+m-1)/2)>i)
{
r=pf;
while(pf!=NULL)
{
if(pb->num>pf->num)
{ r=pf;

temp=r->num;
r->num=pb->num;
pb->num=temp;

strcpy(str1,pb->name);
strcpy(str2,pf->name);
strcpy(pb->name,str2);
strcpy(pf->name,str1);

strcpy(str1,pb->tel);
strcpy(str2,pf->tel);
strcpy(pb->tel,str2);
strcpy(pf->tel,str1);
}
pb=pf;
pf=pf->next;
}
pb=head;
pf=pb->next;
i++;
}
return head;
}

这两种是转载,感觉这种写法不好,写一个不用换值,而换指针。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  面试 null