2019華為校園招聘軟體研發筆試題

2021-03-04 05:38:55 字數 3592 閱讀 7397

1、刪除子串,只要是原串中有相同的子串就刪掉,不管有多少個,返回子串個數。

#include

#include

#include

#include

int delete_sub_str(const char *str,const char *sub_str,char *result)

else

t = *p;

p++;

t++;

memset(temp,0x00,n+1);

}free(temp);

return count;

}void main()

; int num = delete_sub_str(「123abc12de234fg1hi34j123k」,」123」,s);

printf(「the number of sub_str is %d\r\n」,num);

printf(「the result string is %s\r\n」,s);

}2、約瑟夫環是乙個數學的應用問題:已知n個人(以編號1,2,3...n分別表示)圍坐在一張圓桌周圍。

從編號為k的人開始報數,數到m的那個人出列;他的下乙個人又從1開始報數,數到m的那個人又出列;依此規律重複下去,直到圓桌周圍的人全部出列。

#include

#include

typedef struct node

linklist;

linklist *creat(int n)

p->next=head使煉表尾指向煉表頭形成迴圈鍊錶*/

return head;

}void fun(linklist *l,int m)

printf("%5d",p->num);

s=p;

q->next=p->next;

p=p->next;

free(s);

}printf("%5d\n",p->num);

}int main()

3、比較乙個陣列的元素是否為回文陣列

#include

#include

int huiwen(char str)

}if(k==0)

printf("%s 不是乙個回文數\n",str);

else

printf("%s 是乙個回文數\n",str);

return 0;

}void main()

;printf("input a string提示輸入input a string:*/

scanf("%s", strscan()函式輸入乙個字串:*/

huiwen(str);

}4、陣列比較(20分)

問題描述:

比較兩個陣列,要求從陣列最後乙個元素開始逐個元素向前比較,如果2個陣列長度不等,則只比較較短長度陣列個數元素。請程式設計實現上述比較,並返回比較中發現的不相等元素的個數

比如:陣列和陣列按題述要求比較,不相等元素個數為0

陣列和陣列按題述要求比較,不相等元素個數為3

要求實現函式:

intarray_***pare(intlen1,intarray1,intlen2,intarray2)

【輸入】 intlen1:輸入被比較陣列1的元素個數;

intarray1:輸入被比較陣列1;

intlen2:輸入被比較陣列2的元素個數;

intarray2:輸入被比較陣列2;

【輸出】 無

【返回】 不相等元素的個數,型別為int

示例1) 輸入:intarray1=,intlen1=3,intarray2=,intlen2=5

函式返回:0

2) 輸入:intarray1=,intlen1=3,intarray2=,intlen2=6

函式返回:3

#include

#include

#include

int array_***pare(int len1, int array1, int len2, int array2)

return count;

}int main()

; int len1=3;

int array2=;

int len2=5;

result=array_***pare( len1, array1, len2, array2); ///result=array_***pare( len1, array1, len2, array2);不能這樣

函式形參中永遠只是傳得首位址,不能傳陣列切記切記!!!!!!

printf("the result is %d", result);

}5、隨機數按計數輸出

問題描述:

輸入乙個由隨機數組成的數列(數列中每個數均是大於0的整數,長度已知),和初始計數值m。從數列首位置開始計數,計數到m後,將數列該位置數值替換計數值m,並將數列該位置數值出列,然後從下一位置從新開始計數,直到數列所有數值出列為止。如果計數到達數列尾段,則返回數列首位置繼續計數。

請程式設計實現上述計數過程,同時輸出數值出列的順序

比如: 輸入的隨機數列為:3,1,2,4,初始計數值m=7,從數列首位置開始計數(數值3所在位置)

第一輪計數出列數字為2,計數值更新m=2,出列後數列為3,1,4,從數值4所在位置從新開始計數

第二輪計數出列數字為3,計數值更新m=3,出列後數列為1,4,從數值1所在位置開始計數

第三輪計數出列數字為1,計數值更新m=1,出列後數列為4,從數值4所在位置開始計數

最後一輪計數出列數字為4,計數過程完成。

輸出數值出列順序為:2,3,1,4。

要求實現函式:

voidarray_iterate(intlen,intinput_array,intm,intoutput_array)

【輸入】 intlen:輸入數列的長度;

intintput_array:輸入的初始數列

intm:初始計數值

【輸出】 intoutput_array:輸出的數值出列順序

【返回】 無

示例輸入:intinput_array=,intlen=4,m=7

輸出:output_array=

迴圈鍊錶實現

#include

#include

#include

typedef struct node

node;

node *creat(int len , int input_array)

p->next=h;

return (h);

}void array_iterate(int len, int input_array, int m)

m=p->num;

printf("%5d",m);

output_array[j++]=m;

s=p;

q->next=p->next;

p=p->next;

free(s);

s=null;

}m=p->num;

printf("%5d\n",m);

output_array[j]=p->num;

k=j;

for(j=0 ; j<=k; j++)

}int main();

華為2019校園招聘崗位

2014中公廣東事業單位招聘網 中公廣東事業單位考試真題及答案 加入華為,大有可為 我們誠邀擁有夢想並銳意進取的您,加入華為大家庭,在全球舞台上激揚無悔的青春,激發潛能,成就團隊,成就自我 請盡快登入華為 校園招聘主頁 提交簡歷。對於符合條件的同學,我們將主動與您聯絡並安排面試。附 華華為2015校...

2019華為校園招聘機試參考

2012華為校園招聘機試 中國海洋大學 1.字元變換 題目描述 輸入乙個字串,將其中大寫字母轉換為對應小寫字母之後的第五個字母,若原始大寫字母為v z,則轉換為對應小寫字母的值減21。其他字元不變,輸出轉換後的字串。例如,對於字母a,則轉換為小寫字母f 若形參是字母w,則轉換為小寫字母b 要求實現函...

華為軟體研發面試題2收藏

c語言面試題大彙總之華為面試題 eddy整理 1 區域性變數能否和全域性變數重名?答 能,區域性會遮蔽全域性。要用全域性變數,需要使用 區域性變數可以與全域性變數同名,在函式內引用這個變數時,會用到同名的區域性變數,而不會用到全域性變數。對於有些編譯器而言,在同乙個函式內可以定義多個同名的區域性變數...