華為機(jī)試題及答案_第1頁
華為機(jī)試題及答案_第2頁
華為機(jī)試題及答案_第3頁
華為機(jī)試題及答案_第4頁
華為機(jī)試題及答案_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

___________________________________________________________________________________________________華為機(jī)題答案1、過鍵盤入任意一個(gè)符串序,字符串可包含多子串,子串空格分隔。編寫一個(gè)程,自動(dòng)離出各個(gè)子,并使,將其分,并且在最也補(bǔ)充個(gè)’,并將子串存。測試:入:“abcdefghid”

輸出:abc,def,gh,i,d,”#include<stdio.h>#include<string.h>voidDivideString(constchar*pInputStr,longlInputLen,*pOutputStr){inti=0,j=0;intflag=0;while(pInputStr[i]==''){i++;}for(;i<lInputLen;i++){if(pInputStr[i]==''){flag=1;continue;-編輯修-

___________________________________________________________________________________________________}if(flag==1){flag=0;pOutputStr[j++]=',';}pOutputStr[j++]=pInputStr[i];}pOutputStr[j++]=',';pOutputStr[j]='\0';}intmain(){chartest[40];charre[40];gets(test);DivideString(test,strlen(test),re);printf("%s",re);return0;}2、輸入的符串(字符僅包含寫字a到z’,按照下規(guī)則循環(huán)轉(zhuǎn)換后輸出:a->b,b->c,,y->z,z->a若輸入的字串連續(xù)現(xiàn)兩個(gè)字母同時(shí)后一-編輯修-

___________________________________________________________________________________________________個(gè)字母要連續(xù)轉(zhuǎn)換2次。例如:轉(zhuǎn)換為bc,zz轉(zhuǎn)換為ab;連續(xù)相字母超過個(gè)時(shí),第三出現(xiàn)的母按第一次現(xiàn)算。測試:入:char*input="abbbcd"#include<stdio.h>#include<string.h>voidconvert(char*input,char*output){inti;for(i=0;i<strlen(input);i++){if(i==0){output[i]=input[i]+1;if(output[i]==123){output[i]=97;}}else{if(input[i]!=input[i-1]){

輸出:char*output="bcdcde"-編輯修-

___________________________________________________________________________________________________output[i]=input[i]+1;if(output[i]==123){output[i]=97;}}else{output[i]=input[i]+2;if(output[i]==123){output[i]=97;}if(output[i]==124){output[i]=98;}}}}output[i+1]='\0';-編輯修-

___________________________________________________________________________________________________}intmain(){charin[20]={"asdfzzxzxz"};charon[20];//gets(in);convert(in,on);printf("%s",on);return0;}3過鍵盤入一串小寫母(a~z)組成的符串請(qǐng)編寫個(gè)字符過濾程序,若字符中出現(xiàn)多個(gè)同的字,將非首次現(xiàn)的字過濾掉。測試:入:“afafafaf”

輸出:“”#include<stdio.h>#include<string.h>voidstringFilter(constchar*pInputStr,longlInputLen,char*pOutputStr){inti,j,count;intk=0;for(i=0;i<strlen(pInputStr);i++){count=0;-編輯修-

___________________________________________________________________________________________________for(j=0;j<strlen(pOutputStr);j++){if(pInputStr[i]==pOutputStr[j]){count++;}}if(count==0){pOutputStr[k++]=pInputStr[i];}}pOutputStr[k]='\0';}intmain(){charin[20]={"aabbccabacddsads"};charon[20];//gets(in);stringFilter(in,strlen(in),on);printf("%s",on);return0;-編輯修-

___________________________________________________________________________________________________}4過鍵盤入一串小寫母(a~z)組成的符串請(qǐng)編寫個(gè)字符壓縮程序,將字符中連續(xù)出席重復(fù)字進(jìn)行壓縮,輸出壓后的字符串測試:入:“cccddecc”

輸出:3c2de2c”#include<stdio.h>#include<string.h>voidstringZip(constchar*pInputStr,longlInputLen,char*pOutputStr){inti,j=0,num=0;intk=0;for(i=0;i<=lInputLen;i++){if(i&&pInputStr[i]!=pInputStr[i-1]){if(num>1){pOutputStr[j++]=(char)num+'0';}pOutputStr[j++]=pInputStr[i-1];num=1;}else-編輯修-

___________________________________________________________________________________________________{num++;}}pOutputStr[j]='\0';}intmain(){charin[20]={"ccddecc"};charon[20];//gets(in);stringZip(in,strlen(in),on);printf("%s",on);return0;}5、通過盤輸入100以內(nèi)正整數(shù)加、減算式請(qǐng)編寫個(gè)程序輸出算結(jié)果字符。輸入字串的格式為“操作數(shù)運(yùn)算符操作數(shù)”“操數(shù)”“運(yùn)符”之間以一個(gè)空隔開。測試:入:“-7”輸出:-3”#include<stdio.h>#include<string.h>-編輯修-

___________________________________________________________________________________________________#include<math.h>voidarithmetic(constchar*pInputStr,longlInputLen,char*pOutputStr){inti,count=0,re=0;intx,y,z;intnum[2]={0};charop;for(i=0;i<lInputLen;i++){if(pInputStr[i]==''){count++;}}if(count!=2){pOutputStr[0]='0';pOutputStr[1]='\0';return;}for(x=0;pInputStr[x]!='';x++){-編輯修-

___________________________________________________________________________________________________if(pInputStr[x]>='0'&&pInputStr[x]<='9'){num[0]=num[0]*10+pInputStr[x]-'0';}else{pOutputStr[0]='0';pOutputStr[1]='\0';return;}}for(y=x+1;pInputStr[y]!='';y++){}if(y-x-1!=1){pOutputStr[0]='0';pOutputStr[1]='\0';return;}else-編輯修-

___________________________________________________________________________________________________{if(pInputStr[y-1]!='+'&&pInputStr[y-1]!='-'){pOutputStr[0]='0';pOutputStr[1]='\0';return;}else{op=pInputStr[y-1];}}for(z=y+1;z<lInputLen;z++){if(pInputStr[z]>='0'&&pInputStr[z]<='9'){num[1]=num[1]*10+pInputStr[z]-'0';}else{pOutputStr[0]='0';pOutputStr[1]='\0';-編輯修-

___________________________________________________________________________________________________return;}}if(op=='+'){re=num[0]+num[1];}else{re=num[0]-num[1];}itoa(re,pOutputStr,10);}intmain(){charin[20];charon[20];gets(in);arithmetic(in,strlen(in),on);printf("%s",on);return0;}-編輯修-

___________________________________________________________________________________________________6、選秀目打分,分專家評(píng)和大眾評(píng)委,score[]數(shù)組里面儲(chǔ)每個(gè)委打的分?jǐn)?shù)judge_type[]里存與score[]數(shù)組對(duì)應(yīng)評(píng)委類judge_type[i]==表示專評(píng)委judge_type[i]==表示大眾評(píng),n表示評(píng)委總數(shù)。分規(guī)則下:專評(píng)委和大眾委的分先分別取一平均分平均分取整,然后總分=專家評(píng)委平均分*0.6+大眾評(píng)*0.4總分取如果沒有眾評(píng)委,則總分=專家評(píng)平均分總分整。函最終返回選得分。#include<stdio.h>#include<string.h>#include<math.h>intcal_score(intscore[],intjudge_type[],intn){inti=0,gscore;intpro=0,pub=0;intpro_count=0,pub_count=0;for(i=0;i<n;i++){if(judge_type[i]==1){pro_count++;pro=pro+score[i];}if(judge_type[i]==2)-編輯修-

___________________________________________________________________________________________________{pub_count++;pub=pub+score[i];}}if(pub_count!=0){gscore=pro/pro_count*0.6+pub/pub_count*0.4;}else{gscore=pro/pro_count;}returngscore;}intmain(){intscore[5]={90,80,95,86,87};intjudge_type[5]={1,2,2,1,1};intn=5;printf("%d",cal_score(score,judge_type,n));return0;-編輯修-

___________________________________________________________________________________________________}7、給定個(gè)數(shù)組input[],如果組長度n為奇數(shù),則將數(shù)中最大元素放到output[]數(shù)組最中的位置如果數(shù)組長n為偶數(shù),將數(shù)組最大的元素到output[]數(shù)組間兩個(gè)置偏右的那位置上然后再按從到小的序,依次在一個(gè)位置的邊,按一左一右的序,依存放剩下的。例如:input[]{3,6,1,9,7}output[]=7,6,1};input[]={3,6,1,9,7,8}output[]={1,6,8,9,7,#include<stdio.h>#include<string.h>#include<math.h>voidsort(intinput[],intn,intoutput[]){inti,j,k,a;inttemp;for(i=0;i<n;i++){for(j=0;j<n-i-1;j++){if(input[j]<input[j+1]){temp=input[j+1];-編輯修-

___________________________________________________________________________________________________input[j+1]=input[j];input[j]=temp;}}}k=1;a=1;output[n/2]=input[0];while(k<n){output[n/2-a]=input[k++];a++;output[n/2+a-1]=input[k++];}}intmain(){intinput[5]={99,80,95,86,87};intoutput[5];intn=5,i;sort(input,n,output);for(i=0;i<n;i++)-編輯修-

___________________________________________________________________________________________________{printf("%d",output[i]);}return0;}8操作系統(tǒng)務(wù)調(diào)度題操作系統(tǒng)任分為系任務(wù)和用戶務(wù)兩種其中,系統(tǒng)任的優(yōu)先級(jí)<50,用戶任務(wù)優(yōu)先級(jí)>=且<=255。先級(jí)大于255的為非任務(wù),應(yīng)予剔除。有一任務(wù)隊(duì)task[],長度為task中元素值表示任的優(yōu)先級(jí),值越小優(yōu)先級(jí)越高函數(shù)scheduler實(shí)現(xiàn)如下功能,將task[]中的任務(wù)按照統(tǒng)任務(wù)用戶任務(wù)依存放到system_task[]數(shù)組和user_task[]數(shù)組中(數(shù)中元素值是任務(wù)在task[]數(shù)組中的下并且優(yōu)先級(jí)高的任排在前面,優(yōu)先相同的務(wù)按照入隊(duì)序排(即先隊(duì)的務(wù)排在前面,組元素-1表示結(jié)。例如:task[]={0,30,155,1,80,300,170,99}system_task[]={0,3,1,7,-1}user_task[]={4,8,2,6,-1}#include<stdio.h>#include<string.h>#include<math.h>voidscheduler(inttask[],intn,intsystem_task[],intuser_task[]){inti,j,temp;inta=0,b=0;-編輯修-

___________________________________________________________________________________________________for(i=0;i<n;i++){if(task[i]<50){system_task[a++]=i;}else{if(task[i]>=50&&task[i]<=250){user_task[b++]=i;}}}for(i=0;i<a;i++){for(j=0;j<a-i-1;j++){if(task[system_task[j]]>task[system_task[j+1]]){temp=system_task[j+1];system_task[j+1]=system_task[j];-編

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論