2014屆華為校園招聘機試題2

2021-06-18 09:30:41 字數 1347 閱讀 9708

第一題、輸入乙個正整數,並編碼為字串進行輸出

描述: 1、輸入乙個正整數,並編碼為字串進行輸出。

編碼規則為:數字0-9分別編碼為字元a-j

2、輸入肯定是正整數,不用做錯誤較驗

執行時間限制: 無限制 

記憶體限制: 無限制 

輸入: 正整數

輸出: 字串

樣例輸入: 123 

樣例輸出: bcd 

void numbertoletter(char* inputstr , char* outputstr)

outputstr[i] = '\0';

}

第二題、計算最後乙個出列者的編號

描述: 現在有n個競爭者圍坐一圈,爭奪乙個很有吸引力的工作(年薪100w $)。假設這些人編號1,2,。。。,n。第一次從1開始報數,數到m(m>0)的那個人出列,它的下一位又從1開始報數,數到m的那個人又出列。以此類推,直到所有人出列為止。老闆說最後乙個出列的人將獲得這份工作。

如果你也想競爭這份工作,那麼你會坐著哪個位置上?

實現乙個函式,當老闆告訴你n和m時,返回得到工作的那個人的編號。

執行時間限制: 無限制 

記憶體限制: 無限制 

輸入: 競爭者人數,報數

輸出: 最後出列的競爭者的編號。異常則返回 -1。

樣例輸入: 10,10 

樣例輸出: 8 

第三題、條件表示式求值

描述: 給定乙個以字串形式表示的算術表示式,計算該表示式的值。

表示式支援如下運算:「+、-、*、/」,其中「*」和「/」的優先順序要高於「+」和「-」;

不需要考慮括號,且表示式之間沒有空格;

例如:對於表示式"3-2+15*2",該表示式值為31.

執行時間限制: 60 sec 

記憶體限制: 256 mbyte 

輸入: 加減乘除四則運算表示式,長度不超過1024位元組,表示式中不含有括號和空格。

輸出: 表示式的運算結果。

樣例輸入: 3-2+15*2

樣例輸出: 31

void cal(char * a)

s1.push(sum);

}elseelse if(s2.top() == '/')

}if(k != len)

++k;}}

sum1 = s1.top();

s1.pop();

char ch;

int temp;

while(!s2.empty())else if(ch == '-')

}cout<

2014屆華為校園招聘機試題

分類 面試珠璣 2013 09 05 14 14 1212人閱讀收藏 舉報華為機試 華為2014校園招聘的機試題目和2013年的完全一樣。一 題目描述 60分 通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串過濾程式,若字串中出現多個相同的字元,將非首次出現的字元過濾掉。比如字串 aba...

2014屆華為校園招聘機試題

一 題目描述 60分 通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串過濾程式,若字串中出現多個相同的字元,將非首次出現的字元過濾掉。比如字串 abacacde 過濾結果為 abcde 要求實現函式 void stringfilter const char pinputstr,long ...

2014屆華為成都校園招聘機試題

1.輸入正整數,把其中的 0 9 轉換為a j 不用檢測異常輸入,保證輸入無異常 例如 輸入 123 輸出 bcd 2.假設n人,編號為 1,2,3,n 迴圈報數,每次報數為m的出列,求最後出列的人的編號 異常返回 1 例如,輸入 10,10 輸出 8 3 球輸入表示式的值,和 的優先順序大於 和 ...