2015屆華為校園招聘部分機試題

2021-09-11 10:31:54 字數 1321 閱讀 4122

第一題

按要求分解字串,輸入兩個數m,n;m代表輸入的m串字串,n代表輸出的每串字串的位數,不夠補0。例如:輸入2,8, 「abc」 ,「123456789」,則輸出為「abc00000」,「12345678「,」90000000」

解題思路:先輸入一串字串,例如:asjfyberugbwegeac,接下來以8個字元作為分界點,變成了asjfyber ugbwegea c,然後將剩餘的c補足為c0000000。

另一串字元也可依此類推。

/*按要求分解字串,輸入兩個數m,n;m代表輸入的m串字串,n代表輸出的每串字串的位數,不夠補0。

例如:輸入2,8, 「abc」 ,「123456789」,則輸出為「abc00000」,「12345678「,」90000000」*/

#include#include//將字串根據各種情況進行輸出

void put(char a,int len,int n)

{ int i,j,k;

int b=len/n; //指的是分解的個數

int c=n*b; //分解後還剩下的字元

for(i=0;i=c) //當字串到達末尾之後,不足n位的用0進行補充

{k=i+n;

for(j=i;j執行結果如下:

第二題:第一題:拼音轉數字

輸入是乙個只包含拼音的字串,請輸出對應的數字序列。轉換關係如下:

描述: 拼音 yi er san si wu liu qi ba jiu

阿拉伯數字 1 2 3 4 5 6 7 8 9

輸入字元只包含小寫字母,所有字元都可以正好匹配

解題思路:發現字串中的規律:1–y;2–e;3–s;4–s;5–w;6–l;7–q;8–b;9–j;然後i,r,a,n,i,u,i,u,i,a,i,u等字尾字元與前面的字元沒有衝突!!!

這樣的話只需要碰到相應的字元,輸出相應的數字即可,然後數字3或4拉開來分別表示即可。

相應**如下

#include#include#includevoid put(char a,int len) //當然也可以用switch方法來表示,更加一目了然

{ int i;

for(i=0;i**執行結果

宣告:原型題目來自

但結合了筆者自己的思考方式,希望大家共同進步。

2015屆華為校園招聘機試題

第一題 60分 按要求分解字串,輸入兩個數m,n m代表輸入的m串字串,n代表輸出的每串字串的位數,不夠補0。例如 輸入2,8,abc 123456789 則輸出為 abc00000 12345678 90000000 cpp view plain copy include include usin...

2015屆華為校園招聘機試題

include include using namespace std void solve char str int n int len else putchar printf n int main void return 0 第一題 拼音轉數字 輸入是乙個只包含拼音的字串,請輸出對應的數字序列。...

2015屆華為校園招聘機試題二

include include include includeusing namespace std 輸入是乙個只包含拼音的字串,請輸出對應的數字序列。轉換關係如下 描述 拼音 yi er san si wu liu qi ba jiu 阿拉伯數字 1 2 3 4 5 6 7 8 9 輸入字元只包含...