華為筆試技術崗華為認證考試_第1頁
華為筆試技術崗華為認證考試_第2頁
華為筆試技術崗華為認證考試_第3頁
華為筆試技術崗華為認證考試_第4頁
華為筆試技術崗華為認證考試_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1、通過鍵盤輸入 100 以內正整數的加、減運算式,請編寫一個程序輸出運算結果字符串。 輸入字符串的格式為:“操作數 1 運算符 操作數 2”,“操作數”與“運算符”之間以一個空 格隔開。 補充說明:1. 操作數為正整數,不需要考慮計算結果溢出的情況。 2. 若輸入算式格式錯誤,輸出結果為“0”。 要求實現函數:void arithmetic(const char *pInputStr, long lInputLen, char *pOutputStr);【輸入】 pInputStr: 輸入字符串lInputLen: 輸入字符串長度【輸出】 pOutputStr: 輸出字符串,空間已經開辟好,

2、與輸入字符串等長;【注意】只需要完成該函數功能算法,中間不需要有任何 IO 的輸入輸出示例輸入:“4 + 7” 輸出:“11”輸入:“4 - 7” 輸出:“-3”輸入:“9 + 7” 輸出:“0” 注:格式錯誤 復制代碼1 void arithmetic(const char *pInputStr,long lInputLen,char *pOutputStr)2 3 assert(pInputStr!=NULL & pOutputStr!=NULL & lInputLen0);4 int iOperand1=0;5 int iOperand2=0;6 char cSymbol;7 long

3、i;刺猬實習8 for (i=0;i+)9 10 if (pInputStri=0 & pInputStri=0 & pInputStri=9)43 44 iOperand2=iOperand2*10+(pInputStri-0);45 46 else47 48 break;49 50 51 int iTemp;52 switch(cSymbol)53 54 case +:55 iTemp=iOperand1+iOperand2;刺猬實習56 break;57 case -:58 iTemp=iOperand1-iOperand2;59 break;60 default:61 break;62

4、 6364 int k=0;65 if (iTemp0)66 67 iTemp=-iTemp;68 pOutputStr0=-;69 k+;70 7172 char cTemp10;73 itoa(iTemp,cTemp,10);74 int j=0;75 while(cTempj)76 77 pOutputStrk+=cTempj+;78 79刺猬實習80 pOutputStrk=0;8182 復制代碼2、手機號碼判斷(20 分)問題描述:我國大陸運營商的手機號碼標準格式為:國家碼+手機號碼,例如:8613912345678。特點如下: 1、長度 13 位;2、以 86 的國家碼打頭;3、手

5、機號碼的每一位都是數字。請實現手機號碼判斷的函數(注:考生無需關注手機號碼的真實性,也就是說諸如 86123123456789 這樣的手機號碼,我們也認為是合法的),要求: 1)如果手機號碼合法,返回 0;2)如果手機號碼長度不合法,返回 13)如果手機號碼中包含非數字的字符,返回 2;4)如果手機號碼不是以 86 打頭的,返回 3;【注】除成功的情況外,以上其他判斷的優(yōu)先級依次降低。也就是說,如果判斷出長度不合法,直接返回 1 即可,不需要再做其他判斷。 要求實現函數:int verifyMsisdn(char* inMsisdn)【輸入】 char* inMsisdn,表示輸入的手機號碼字

6、符串?!据敵觥?無【返回】 判斷的結果,類型為 int。示例刺猬實習inMsisdn = “869123456789“輸入:輸出:無1返回:輸入:inMsisdn = “88139123456789“輸出:無3返回:輸入:inMsisdn = “86139123456789“輸出:無返回:0復制代碼1 int verifyMsisdn(char *inMsisdn)2 3 assert(inMsisdn!=NULL);45 int iLen=strlen(inMsisdn);6 if (iLen!=13)7 8 return 1;9 1011 for (int i=0;i12 13 if (i

7、nMsisdni9)14 刺猬實習15 return 2;16 17 1819 if (inMsisdn0!=8 | inMsisdn1!=6)20 21 return 3;22 2324 return 0;2526 復制代碼3、將一個字符串的元音字母復制到另一個字符串,并排序(30 分)問題描述:有一字符串,里面可能包含英文字母(大寫、小寫)、數字、特殊字符,現在需要實現 一函數,將此字符串中的元音字母挑選出來,存入另一個字符串中,并對字符串中的字母進行從小到大的排序(小寫的元音字母在前,大寫的元音字母在后,依次有序)。 說明:1、 元音字母是 a,e,i,o,u,A,E,I,O,U。2、

8、篩選出來的元音字母,不需要剔重(chong);最終輸出的字符串,小寫元音字母排在前面,大寫元音字母排在后面,依次有序。要求實現函數:void sortVowel (char* input, char* output);【輸入】 char* input,表示輸入的字符串刺猬實習【輸出】 char* output,排好序之后的元音字符串?!痉祷亍?無示例輸入:char *input = “Abort!May Be Some Errors In Out System. “輸出:char *output =“aeeeooouAEIO “復制代碼1 void sortVowel(char *pInput

9、,char *pOutput)2 3 assert(pInput!=NULL & pOutput!=NULL);45 int iLen=strlen(pInput);6 char *pSmall=new chariLen+1;7 char *pLarge=new chariLen+1;89 int iSmallCount=0;10 int iLargeCount=0;1112 for (int i=0;i13 14 if (pInputi=a | pInputi=e | pInputi=i | pInputi=o | pInputi=u)15 16 pSmalliSmallCount+=pIn

10、puti;1718 刺猬實習19 else if (pInputi=A | pInputi=E | pInputi=I | pInputi=O |pInputi=U)20 21 pLargeiLargeCount+=pInputi;22 23 2425 sort(pSmall,pSmall+iSmallCount);26 sort(pLarge,pLarge+iLargeCount);2728 int j,k=0;29 for (j=0;j30 31 pOutputk+=pSmallj;32 33 for (j=0;j34 35 pOutputk+=pLargej;36 3738 pOutpu

11、tk=0;3940 delete pSmall;41 delete pLarge;刺猬實習42 復制代碼4、我國公民的號碼特點如下:1、長度為 18 位;2、第 117 位只能為數字;3、第 18 位可以是數字或者小寫英文字母 x。4、號碼的第 714 位表示持有人生日的年、月、日信息。例如或 51100219880808011x。請實現號碼判斷的函數。除滿足以上要求外,需要對持有人生日的年、月、日信息進行校驗。年份大于等于 1900 年,小于等于 2100 年。 需要考慮閏年、大小 月的情況。所謂閏年,能被 4 整除且不能被 100 整除 或 能被 4

12、00 整除的年份,閏年的 2月份為 29 天,非閏年的 2 月份為 28 天。其他情況的校驗,考生不用考慮。 函數返回值:1)號合法,返回 0;如果2)如果號長度不合法,返回 1;3)號第 117 位含有非數字的字符,返回 2;如果4)如果號第 18 位既不是數字也不是英文小寫字母 x,返回 3;5)號的年信息非法,返回 4;如果6)號的月信息非法,返回 5;如果7)如果號的日信息非法,返回 6(請注意閏年的情況);【注】除成功的情況外,以上其他判斷的優(yōu)先級依次降低。也就是說,如果判斷出長度不合法,直接返回 1 即可,不需要再做其他判斷。 要求實現函數:int verifyIDCard(char* input)【

溫馨提示

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

評論

0/150

提交評論