1 / 17
文档名称:

XXXX届华为校园招聘上机考试题.doc

格式:doc   大小:80KB   页数:17
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

XXXX届华为校园招聘上机考试题.doc

上传人:泰山小桥流水 2023/3/5 文件大小:80 KB

下载得到文件列表

XXXX届华为校园招聘上机考试题.doc

文档介绍

文档介绍:该【XXXX届华为校园招聘上机考试题 】是由【泰山小桥流水】上传分享,文档一共【17】页,该文档可以免费在线阅读,需要了解更多关于【XXXX届华为校园招聘上机考试题 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
届华为校园招聘上机考试题
分类:华为预备2011-09-0815:10281人阅读讨论(0)珍藏举报
在网上看到华为在有的地点差不多开始机试了,所以决定自己先编着
试一试。下边是题目和自己写的代码。
1、选秀节目打分,分为专家评委和大众评委,score[]数组里面贮备每
个评委打的分数,judge_type[]里贮备与score[]数组对应的评委类不,ju
dge_type[i]==1,表示专家评委,judge_type[i]==2,表示大众评委,n表示评委总数。打分规则以下:专家评委和大众评委的分数先分不取一个
均匀分(均匀分取整),此后,总分=专家评委均匀分*+大众评
委,总分取整。假如没有大众评委,则总分=专家评委均匀分,总分取整。函数最后返回选手得分。
函数接口intcal_score(intscore[],intjudge_type[],intn)
viewplaincopytoclipboardprint?
#include<>
#include<>
#include<>
#include<>
#defineN5
intcal_score(intscore[],intjudge_type[],intn)
{
intexpert=0;
intdazhong=0;
intzongfen=0;
inti;
intnumber=0;
for(i=0;i<N;i++)
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
{
if(judge_type[i]==1)
{
expert=expert+score[i];
number++;
}
elsedazhong=dazhong+score[i];
}
if(number==N)
{
zongfen=(int)(expert/N);
}
else
{
expert=(int)(expert/number);
dazhong=(int)(dazhong/(N-number));
zongfen=int(*expert+*dazhong);
}
returnzongfen;
}
intmain()
{
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
int
int
int
int

score[N];
judge_type[N];
numberlast=0;
i;
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
printf("pleaseinputthe%dscore:\n",N);
for(i=0;i<N;i++)
scanf("%d",&score[i]);
printf("pleaseinputthelevel(1:expert,2:dazhong)\n");
for(i=0;i<N;i++)
scanf("%d",&judge_type[i]);numberlast=cal_score(score,judge_type,N);printf("thelastscoreis%d\n",numberlast);return0;
}
运转结果剖析:
pleaseinputthe5score:
9080878991
pleaseinputthelevel(1:expert,2:dazhong)
12111
thelastscoreis85
2、给定一个数组input[],假如数组长度n为奇数,则将数组中最大的元素放到output[]数组最中间的地点,假如数组长度n为偶数,则将数组中最大的元素放到output[]数组中间两个地点偏右的那个地点上,此后再按从大到小的序次,挨次在第一个地点的两边,依据一左一右的序次,挨次存放剩下的数。
比方:input[]={3,6,1,
9,7}
output[]={3,
7,9,
6,1};
input[]
={3,6,
1,9,7,8}
outp
ut[]=
{1,6,8,9,7,3}
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
viewplaincopytoclipboardprint?
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
#include<>
#include<>
#include<>
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
void

sort(int

input[],

int

n,

int

output[])
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
{
inti,j;
intk=1;
inttemp;
intmed;
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
for(i=0;i<n;i++)
for(j=0;j<n-i;j++)
if(input[j]>input[j+1])
{temp=input[j];input[j]=input[j+1];input[j+1]
=temp;}
if(n%2!=0)
{
for(i=0;i<n;i++)
printf("%2d",input
[i]);
printf("\n");
med=(n-1)/2;
output[med]=input[n-1];
for(i=1;i<=med;i++)
{
output[med-i]=input[n-1-
k];
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
output[med+i]=input[n-2
-k];
k=k+2;
}
}
else
{
for(i=0;i<n;i++)
printf("%2d",input
[i]);
printf("\n");
med=n/2;
output[med]=input[n-1];
for(i=1;i<=med-1;i++)
{
output[med-i]=input[n-1-
k];
output[med+i]=input[n-2
-k];
k=k+2;
}
output[0]=input
[0];
}
for(i=0;i<n;i++)
printf("%2d",output
[i]);
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
printf("\n");
}
intmain()
{
inta[6]={3,6,1,9,7,8};
intb[6]={0};
for(inti=0;i<6;i++)
printf("%2d",a[i]);
printf("\n");
sort(a,6,b);
return0;
}
运转结果
361978
136789
168973
3、操作系统任务调换咨询题。操作系统任务分为系统任务和用户任
务两种。此中,系统任务的优先级<50,用户任务的优先级>=50且<=255。优先级大于255的为非法任务,应予以剔除。现有一任务队列task[],
长度为n,task中的元素值表示任务的优先级,数值越小,优先级越高。函
数scheduler实现以下功能,将task[]中的任务依据系统任务、用户任务挨次存放到system_task[]数组和user_task[]数组中(数组中元素的值是任务在task[]数组中的下标),同时优先级高的任务排在前面,数组元素为-1
表示停止。
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
比方:task[]
={0,
30,155,1,
80,300,170,40,9
9}
system_task[]={0,
3,1,
7,-1}
user_task[]={4,8,2,
6,
-1}
函数接口
voidscheduler(inttask
[],
int
n,intsystem_task[],int
user_task[])
viewplaincopytoclipboardprint?
#include<>
#include<>
#include<>
#include<>
voidscheduler1(inttask[],intn,intsystem_task[],intuser_t
ask[])
{
inti;
intj=0;
int*p,*pp,*p_user,*pp_user;
intindex=0;
intcount,count2;
intmin=0;
intk=0;
p=(int*)malloc(sizeof(int)*n);
for(i=0;i<n;i++)
p[i]=0;
pp=(int*)malloc(sizeof(int)*n);
for(i=0;i<n;i++)
pp[i]=0;
p_user=(int*)malloc(sizeof(int)*n);
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
for(i=0;i<n;i++)
p_user[i]=0;
pp_user=(int*)malloc(sizeof(int)*n);
for(i=0;i<n;i++)
pp_user[i]=0;
for(i=0;i<n;i++)
{
if(task[i]<50)
{
{
system_task[j]=task[i];
pp[j]=i;
j++;
}
count=j;
}
elseif(task[i]<=255)
{
{
user_task[k]=task[i];
pp_user[k]=i;
k++;
}
count2=k;
}
elsetask[i]=task[i];
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
}
for(i=0;i<count;i++)
printf("%3d",system_task[i]);
printf("\n");
for(i=0;i<count;i++)
{
min=system_task[0];
for(j=1;j<count;j++)
{
if(system_task[j]<min)
{
min=system_task[j];
p[i]=j;
}
}
system_task[p[i]]=51;
}
pp[count]=-1;
for(i=0;i<count;i++)
printf("%3d",pp[p[i]]);
printf("%3d\n",pp[count]);
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
/****************************************************
*******/
for(i=0;i<count2;i++)
printf("%4d",user_task[i]);
printf("\n");
for(i=0;i<count2;i++)
{
min=user_task[0];
for(j=1;j<count2;j++)
{
if(user_task[j]<min)
{
min=user_task[j];
p_user[i]=
j;
}
}
user_task[p_user[i]]=256;
}
pp_user[count2]=-1;
for(i=0;i<count2;i++)
printf("%4d",pp_user[p_user[i]]);
printf("%3d\n",pp_user[count2]);
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题
XXXX届华为校园招聘上机考试题