欢迎来到天天文库
浏览记录
ID:52963075
大小:204.50 KB
页数:22页
时间:2020-04-04
《华为实习生面试上机题总结.pdf》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、华为上机题总结1.选秀节目打分,分为专家评委和大众评委,score[]数组里面存储每个评委打的分数,judge_type[]里存储与score[]数组对应的评委类别,judge_type[i]==1,表示专家评委,judge_type[i]==2,表示大众评委,n表示评委总数。打分规则如下:专家评委和大众评委的分数先分别取一个平均分(平均分取整),然后,总分=专家评委平均分*0.6+大众评委*0.4,总分取整。如果没有大众评委,则总分=专家评委平均分,总分取整。函数最终返回选手得分。函数接口intcal_score(intscore[],intjudge
2、_type[],intn)viewplain1.#include"iostream"2.usingnamespacestd;3.4.intcal_score(intscore[],intjudge_type[],intn)5.{6.if(NULL==score
3、
4、NULL==judge_type
5、
6、0==n)7.return0;8.9.intsum=0;10.intsum1=0,count1=0;11.intsum2=0,count2=0;12.for(inti=0;i7、m1=sum1+score[i];17.count1++;18.}19.else20.{21.sum2=sum2+score[i];22.count2++;23.}24.}25.if(0==count2)26.sum=sum1/count1;27.else28.sum=(sum1/count1)*0.6+(sum2/count2)*0.4;29.returnsum;30.}31.voidmain()32.{33.intscore[3]={12,13,15};34.intjudge_type[3]={1,1,2};35.printf("%d",cal_sc8、ore(score,judge_type,3));36.37.}38.39.//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}output[]={1,6,8,9,7,3}函数接口voi9、dsort(intinput[[,intn,intoutput[])viewplain1.#include"iostream"2.usingnamespacestd;3.voidbubblesort(intdata[],intn)4.{5.inttemp=0;6.for(inti=0;i10、oidsort(intinput[],intn,intoutput[])21.{22.int*sort_input=newint[n];23.for(inti=0;i11、[k++];36.output[mid+j]=sort_input[k++];37.}38.39.}40.else41.{42.intmid=n/2;43.intk=0;44.output[mid]=sort_input[k++];45.for(intj=1;j12、57.58.voidmain()59.{60.intinput1[]={3,6,
7、m1=sum1+score[i];17.count1++;18.}19.else20.{21.sum2=sum2+score[i];22.count2++;23.}24.}25.if(0==count2)26.sum=sum1/count1;27.else28.sum=(sum1/count1)*0.6+(sum2/count2)*0.4;29.returnsum;30.}31.voidmain()32.{33.intscore[3]={12,13,15};34.intjudge_type[3]={1,1,2};35.printf("%d",cal_sc
8、ore(score,judge_type,3));36.37.}38.39.//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}output[]={1,6,8,9,7,3}函数接口voi
9、dsort(intinput[[,intn,intoutput[])viewplain1.#include"iostream"2.usingnamespacestd;3.voidbubblesort(intdata[],intn)4.{5.inttemp=0;6.for(inti=0;i10、oidsort(intinput[],intn,intoutput[])21.{22.int*sort_input=newint[n];23.for(inti=0;i11、[k++];36.output[mid+j]=sort_input[k++];37.}38.39.}40.else41.{42.intmid=n/2;43.intk=0;44.output[mid]=sort_input[k++];45.for(intj=1;j12、57.58.voidmain()59.{60.intinput1[]={3,6,
10、oidsort(intinput[],intn,intoutput[])21.{22.int*sort_input=newint[n];23.for(inti=0;i11、[k++];36.output[mid+j]=sort_input[k++];37.}38.39.}40.else41.{42.intmid=n/2;43.intk=0;44.output[mid]=sort_input[k++];45.for(intj=1;j12、57.58.voidmain()59.{60.intinput1[]={3,6,
11、[k++];36.output[mid+j]=sort_input[k++];37.}38.39.}40.else41.{42.intmid=n/2;43.intk=0;44.output[mid]=sort_input[k++];45.for(intj=1;j12、57.58.voidmain()59.{60.intinput1[]={3,6,
12、57.58.voidmain()59.{60.intinput1[]={3,6,
此文档下载收益归作者所有