两个人做人爱视频免费,97久久精品人人搡人妻人人玩,欧洲精品码一区二区三区,999zyz玖玖资源站永久

我要投稿 投訴建議

華為校園招聘上機筆試題

時間:2022-07-26 03:10:43 筆試題目 我要投稿
  • 相關推薦

華為校園招聘上機筆試題

  上機時間兩小時,3道題

華為校園招聘上機筆試題

  1 字串轉換

  問題描述:

  將輸入的字符串(字符串僅包含小寫字母‘a’到‘z’),按照如下規則,循環轉換后輸出:a->b,b->c,…,y->z,z->a;若輸入的字符串連續出現兩個字母相同時,后一個字母需要連續轉換2次。例如:aa 轉換為 bc,zz 轉換為 ab;當連續相同字母超過兩個時,第三個出現的字母按第一次出現算。

  要求實現函數:

  void convert(char *input,char* output)

  【輸入】 char *input , 輸入的字符串

  【輸出】 char *output ,輸出的字符串

  【返回】 無

  示例

  輸入:char*input="abcd"

  輸出:char*output="bcde"

  輸入:char*input="abbbcd"

  輸出:char*output="bcdcde"

  void convert(char *input,char *output)

  {

  char c='\0';

  int tag=0;

  int len=strlen(input);

  for(int i=0;i

  {

  if(input[i]!=c)//當前字符與前一個字符不相等,則該字符+1

  {

  output[i]=(input[i]-'a'+1)%26+'a';

  c=input[i];

  tag=1;

  }else

  {

  if(tag==1)//當前字符與前一個字符相等,且前面只有一個字符相同

  {

  output[i]=(input[i]-'a'+2)%26+'a';

  c='\0';

  tag=0;

  }else//當前字符與前一個字符相等,且前面已有2n個字符相同。則按第一次出現算

  {

  output[i]=(input[i]-'a'+1)%26+'a';

  c=output[i];

  tag=1;

  }

  }

  }

  }

  void convert(char *input,char *output)

  {

  char c='\0';

  int tag=0;

  int len=strlen(input);

  for(int i=0;i

  {

  if(input[i]!=c)//當前字符與前一個字符不相等,則該字符+1

  {

  output[i]=(input[i]-'a'+1)%26+'a';

  c=input[i];

  tag=1;

  }else

  {

  if(tag==1)//當前字符與前一個字符相等,且前面只有一個字符相同

  {

  output[i]=(input[i]-'a'+2)%26+'a';

  c='\0';

  tag=0;

  }else//當前字符與前一個字符相等,且前面已有2n個字符相同。則按第一次出現算

  {

  output[i]=(input[i]-'a'+1)%26+'a';

  c=output[i];

  tag=1;

  }

  }

  }

  }

  2 字符串處理轉換

  問題描述:

  在給定字符串中找出單詞( “單詞”由大寫字母和小寫字母字符構成,其他非字母字符視為單詞的間隔,如空格、問號、數字等等;另外單個字母不算單詞);找到單詞后,按照長度進行降序排序,(排序時如果長度相同,則按出現的順序進行排列),然后輸出到一個新的字符串中;如果某個單詞重復出現多次,則只輸出一次;如果整個輸入的字符串中沒有找到單詞,請輸出空串。輸出的單詞之間使用一個“空格”隔開,最后一個單詞后不加空格。

  要求實現函數:

  void my_word(charinput[], char output[])

  【輸入】 char input[], 輸入的字符串

  【輸出】 char output[],輸出的字符串

  【返回】 無

  示例

  輸入:charinput[]="some local buses, some1234123drivers" ,

  輸出:charoutput[]="drivers local buses some"

  輸入:charinput[]="%A^123 t 3453i*()" ,

  輸出:charoutput[]=""

  3 正數減法

  問題描述:

  兩個任意長度的正數相減,這兩個正數可以帶小數點,也可以是整數,請輸出結果。 輸入的字符串中,不會出現除了數字與小數點以外的其它字符,不會出現多個小數點以及小數點在第一個字符的位置等非法情況,所以考生的程序中無須考慮輸入的數值字符串非法的情況。

  詳細要求以及約束:

  1.輸入均為正數,但輸出可能為負數;

  2.輸入輸出均為字符串形式;

  3.如果輸出是正數則不需要帶符號,如果為負數,則輸出的結果字符串需要帶負號

  例如:2.2-1.1 直接輸出為“1.1”,1.1-2.2 則需要輸出為“-1.1”

  4.輸出的結果字符串需要過濾掉整數位前以及小數位后無效的0,小數位為全0的,直接輸出整數位

  例如相減結果為11.345,此數值前后均不可以帶0,“011.345”或者“0011.34500”等等前后帶無效0的均視為錯誤 輸出。例如1.1-1.1結果為0.0,則直接輸出0。

  要求實現函數:

  void Decrease(char *input1, char*input2, char *output)

  【輸入】 char *iinput1 被減數

  char*nput2 減數

  【輸出】 char *output 減法結果

  【返回】 無

  示例

  輸入:char *input1="2.2"

  char *input2="1.1"

  輸出:char*output="1.1"

  輸入:char *input1="1.1"

  char *input2="2.2"

  輸出:char *output="-1.1"

  每一場題目都不一樣,群里面還有人提到有表達式求值,如“3*2+1”,結果為7

【華為校園招聘上機筆試題】相關文章:

百度校園招聘筆試題09-26

中國銀行校園招聘筆試題及答案09-26

華為硬件面試試題08-08

超經典 java 華為筆試題09-26

關于華為筆試題及答案08-07

華為面試的筆試試題08-08

華為筆試題及答案201708-08

華為C++筆試題09-25

NOKIA招聘筆試題09-26

華為常考面試題09-25

主站蜘蛛池模板: 巴东县| 溧水县| 湘潭县| 兴城市| 江阴市| 合阳县| 涞水县| 巴青县| 淮阳县| 杭锦后旗| 许昌市| 临汾市| 三原县| 邹城市| 常熟市| 兴山县| 苗栗县| 云南省| 英超| 桂东县| 海淀区| 牙克石市| 宝应县| 古浪县| 金门县| 陆川县| 静乐县| 辽源市| 永州市| 博罗县| 阿勒泰市| 陈巴尔虎旗| 武山县| 海丰县| 通城县| 彝良县| 资中县| 融水| 北票市| 广灵县| 兰溪市|