『壹』 華為C語言上機試題
#include <stdio.h>
#include <assert.h>
void take_num(const char *strIn, int *n, unsigned int *outArray)
{
const char * p = strIn;
int next = 0;
*n = 0;
outArray[0] = 0;
assert(p && n && outArray);
for (p = strIn;*p;p++) {
if (('0'<=*p)&&(*p<='9')) {
outArray[*n] = (outArray[*n] * 10)+((*p) - '0');
next = 1; /*後面還有*/
} else {
if (next == 1) {
(*n)++;
}
next = 0;
}
}
}
void max_prefix_match(const char *ip_addr, const char *net_addr_array[], int *n)
{
int ip,tar_net,tar_mask;/*ip地址*/
int ip_it[4],net_it[4],mask_it[4];
char * p;
int index,max_index,cur_bits,max_bits = 0,bit;
*n = -1;
sscanf(ip_addr,"%d.%d.%d.%d",&ip_it[0],&ip_it[1],&ip_it[2],&ip_it[3]);
ip = ((ip_it[0]<<24)+(ip_it[1]<<16)+(ip_it[2]<< 8)+ip_it[3]);
for (index = 0;net_addr_array[index][0] != '\0';index++) {
/*獲取網路號和掩碼*/
p = net_addr_array[index];
sscanf(p,"%d.%d.%d.%d/%d.%d.%d.%d",
&net_it[0],&net_it[1],&net_it[2],&net_it[3],
&mask_it[0],&mask_it[1],&mask_it[2],&mask_it[3]);
tar_mask = ((mask_it[0]<<24)+(mask_it[1]<<16)+(mask_it[2]<< 8)+mask_it[3]);
tar_net = ((net_it[0]<<24)+(net_it[1]<<16)+(net_it[2]<< 8)+net_it[3]);
if (((tar_mask) & (ip)) == (tar_net)) {
cur_bits = 0;
/*計算1的個數*/
for (bit = 0;bit < sizeof(tar_mask) * 8;bit++) {
cur_bits += tar_mask&1;
tar_mask >>= 1;
}
if (cur_bits > max_bits) {
max_bits = cur_bits;
max_index = index;
}
}
}
if (max_bits != 0) {
*n = max_index;
}
}
int main()
{
int i, n,arrayOut[100] = {0};
char *strIn = "ab00cd+123fght456-25 3.005fgh";
char *ip_addr = "192.168.1.100 ";
char *net_addr_array[1024] = {
"192.168.1.128/255.255.255.192",
"192.168.1.0/255.255.255.0",
"192.168.1.64/255.255.255.192",
"0.0.0.0/0.0.0.0",
""
};
take_num(strIn,&n,arrayOut);
printf("<1>:input:%s\noutput: [%d]\n",strIn,n);
for (i = 0;i < n;i++) {
printf("%d\n",arrayOut[i]);
}
max_prefix_match(ip_addr,net_addr_array,&n);
if (n != -1) {
printf("<2>max:[%d] %s",n,net_addr_array[n]);
}
return 0;
}
『貳』 高分跪求 華為 C語言面試題
我現在學啊,給你份考題,具體是不是你需要的,還要你自己看嘍!(是去年的我們的考題)答案告訴你嘍!
(1)在信息時代,計算機的應用非常廣泛,主要有如下幾大領域:科學計算、信息處理、過程式控制制、計算機輔助工程、家庭生活和
A)軍事應用
B)現代教育
C)網路服務
D)以上都不是
答案:B
(2)在ENIAC的研製過程中,由美籍匈牙利數學家總結並提出了非常重要的改進意見,他是
A)馮•諾依曼
B)阿蘭•圖靈
C)古德•摩爾
D)以上都不是
答案:A
(3)十進制數75用二進制數表示是
A)1100001
B)1101001
C)0011001
D)1001011
答案:D
(4)一個非零無符號二進制整數後加兩個零形成一個新的數,新數的值是原數值的
A)4倍
B)二倍
C)4分之一
D)二分之一
答案:A
(5)與十進制數291等值的十六進制數為
A)123
B)213
C)231
D)132
答案:A
(6)下列字元中,其ASCII碼值最小的是
A)$
B)J
C)b
D)T
答案:A
(7)下列4條敘述中,有錯誤的一條是
A)通過自動(如掃描)或人工(如擊鍵、語音)方法將漢字信息(圖形、編碼或語音)轉換為計算機內部表示漢字的機內碼並存儲起來的過程,稱為漢字輸入
B)將計算機內存儲的漢字內碼恢復成漢字並在計算機外部設備上顯示或通過某種介質保存下來的過程,稱為漢字輸出
C)將漢字信息處理軟體固化,構成一塊插件板,這種插件板稱為漢卡
D)漢字國標碼就是漢字拼音碼
答案:D
(8)某漢字的國際碼是1112H,它的機內碼是
A)3132H
B)5152H
C)8182H
D)9192H
答案:D
(9)以下關於高級語言的描述中,正確的是
A)高級語言誕生於20世紀60年代中期
B)高級語言的"高級"是指所設計的程序非常高級
C)C++語言採用的是"編譯"的方法
D)高級語言可以直接被計算機執行
答案:C
(10)早期的BASIC語言採用的哪種方法將源程序轉換成機器語言?
A)匯編
B)解釋
C)編譯
D)編輯
答案:B
(11)計算機軟體系統包括
A)系統軟體和應用軟體
B)編輯軟體和應用軟體
C)資料庫軟體和工具軟體
D)程序和數據
答案:A
(12)WPS 2000,Word 97等字處理軟體屬於
A)管理軟體
B)網路軟體
C)應用軟體
D)系統軟體
答案:C
(13)使用Pentium Ⅲ500的微型計算機,其CPU的輸入時鍾頻率是
A)500kHz
B)500MHz
C)250kHz
D)250MHz
答案:B
(14)靜態RAM的特點是
A)在不斷電的條件下,信息在靜態RAM中保持不變,故而不必定期刷新就能永久保存信息
B)在不斷電的條件下,信息在靜態RAM中不能永久無條件保持,必須定期刷新才不致丟失信息
C)在靜態RAM中的信息只能讀不能寫
D)在靜態RAM中的信息斷電後也不會丟失
答案:A
(15)CPU的主要組成:運算器和
A)控制器
B)存儲器
C)寄存器
D)編輯器
答案:A
(16)高速緩沖存儲器是為了解決
A)內存與輔助存儲器之間速度不匹配問題
B)CPU與輔助存儲器之間速度不匹配問題
C)CPU與內存儲器之間速度不匹配問題
D)主機與外設之間速度不匹配問題
答案:C
(17)以下哪一個是點陣列印機?
A)激光列印機
B)噴墨列印機
C)靜電列印機
D)針式列印機
答案:D
(18)為了防止計算機病毒的傳染,應該做到
A)不要拷貝來歷不明的軟盤上的程序
B)對長期不用的軟盤要經常格式化
C)對軟盤上的文件要經常重新拷貝
D)不要把無病毒的軟盤與來歷不明的軟盤放在一起
答案:A
(19)下列關於計算機的敘述中,不正確的一條是
A)世界上第一台計算機誕生於美國,主要元件是晶體管
B)我國自主生產的巨型機代表是"銀河"
C)筆記本電腦也是一種微型計算機
D)計算機的字長一般都是8的整數倍
答案:A
(20)下列關於計算機的敘述中,不正確的一條是
A)"裸機"就是沒有機箱的計算機
B)所有計算機都是由硬體和軟體組成的
C)計算機的存儲容量越大,處理能力就越強
D)各種高級語言的翻譯程序都屬於系統軟體
答案:A
『叄』 華為機考試考什麼題型呢
華為南京地區校園招聘軟體類上機考試說明同學您好!歡迎您應聘華為公司。軟體研發類崗位(軟體研發、雲計算、操作系統開發、資料庫開發)需要提前進行上機考試。現將上機考試做如下說明。一、 題目類別本次上機考試題目設置C/C++、java兩個類別,根據個人情況選作一個類別。二、 題目數量每個考生有三道題,第一二道題必答,第三道題為附加題可以選作,附加題做出,成績會計入總分。三、 考試時間安排1、簡歷篩選後,從9月17日開始分批安排上機考試2、每個考生上機考試時間為2小時一、 上機考試步驟1、打開IE輸入伺服器的IP地址或者直接打開收藏夾中已經收藏好的地址;2、輸入姓名和手機號,選擇考試語言,提交登錄: 3、登錄後會進入試題說明頁面,考試閱讀完試題要求後,在頁面下方點擊 下載試題框架並解壓到D盤。如果是C/C++則用VC打開 工程進行編程,只在func.cpp文件中進行函數編寫,函數名已經定義好;如果是Java則用Eclips打開Java工程進行編程,只在SWTest.java文件中進行函數編寫,函數名已經定義好。注意,考生不要進行任何IO輸入輸出的處理(題目說明中已經有寫了),否則會得0分。4、編完代碼並編譯和調試通過後,點擊試題頁面下方的 按鈕,在彈出的窗口中,如果是C/C++則將test.exe和func.cpp拷貝到一個名為test的目錄中然後打包該目錄上傳,如果是Java則將工程仍然打包為SWTest.rar一次性上傳(這個過程非常重要,否則會因無法自動判卷而得0分)。上傳之後頁面會顯示「提交成功」,然後關閉所有IE窗口並清空客戶機中您所創建的所有內容後結束考試離開考場。二、 如何閱卷1、考生提交試卷後,我們在伺服器後台執行系統閱卷程序,進行自動判卷,不進行人工閱卷。2、系統設置了多個測試用例,根據用例執行的情況判斷考生所上機考試的分數。三、 樣題編寫一個函數,統計出具有n個元素的一維數組中大於等於所有元素平均值的元素的個數並返回。 預祝您上機考試順利! 華為南京校園招聘組2011年9月 華為南京校園招聘組
華為技術有限公司Huawei Technologies Co., Ltd.
Email: [email protected]
地址:南京雨花台軟體大道101號華為南京基地 郵編:210012
Huawei Technologies Co., Ltd.
『肆』 華為面試測試一個筆試判斷題,所有的錯誤都會引起缺陷。不知道這個說法對還是不對。
網側就是性格測試;
除了軟體類的崗位,都沒有筆試,軟體類的筆試是上機編程,三道題,難度依次遞增;
今年技術類只有兩輪面試:技術面+綜合面;取消了以前的群面和英語測試;銷售和客服保留了群面;
技術面時主要問和所報職位相關的專業知識,以及談你的項目經歷;
Just take it easy。
我昨天剛面完,還在等通知啊。
『伍』 華為校園招聘上機考試 多長時間
華為校園招聘上機考試30分鍾以內,因為就只有三道題。每一道題10分鍾。
華為校園招聘的基本條件:
華為校園招聘會在在985/211院校、一些普通本科院校進行校園招聘。英語四級證書是門檻,如果沒有四級證書就不用去了。
華為招聘還要看你是否有一顆積極上進的心以及樂觀的心態。
校園招聘定義
校園招聘是一種特殊的外部招聘途徑。是指招聘組織(企業等)直接從學校招聘各類各層次應屆畢業生,也指招聘組織(企業等)通過各種方式招聘各類各層次應屆畢業生。
特點
高校作為一個巨大的人才儲備庫,可謂「人才濟濟,藏龍卧虎」。學生們經過幾年的專業學習,具備了系統的專業理論功底,盡管還缺乏豐富的工作經驗,但其仍然具有很多就業優勢,比如,富有熱情;學習能力強;善於接受新事物;頭腦中的條條框框少;對未來抱有憧憬;而且都是年輕人,沒有家庭拖累;可以全身心地投入到工作中;更為重要的是,他們是「白紙」一樣的「職場新鮮人」,可塑性極強,更容易接受公司的管理理念和文化。正是畢業生身上的這些特質,吸引了眾多企業的眼球,校園招聘成為企業重要的招聘渠道之一。
風險警惕
用人單位要注意了解大學生在就業方面的一些政策和規定,以免選中後無法招收;一部分大學生在就業中有腳踩兩只船或幾只船的現象,要簽違約責任; 學生往往對走上社會的工作會有不切實際的估計,對自己的能力也缺乏准確的評價。
華為
華為技術有限公司是一家生產銷售通信設備的民營通信科技公司,於1987年正式注冊成立,總部位於中國廣東省深圳市龍崗區坂田華為基地。華為是全球領先的信息與通信技術(ICT)解決方案供應商,專注於ICT領域,堅持穩健經營、持續創新、開放合作,在電信運營商、企業、終端和雲計算等領域構築了端到端的解決方案優勢,為運營商客戶、企業客戶和消費者提供有競爭力的ICT解決方案、產品和服務,並致力於實現未來信息社會、構建更美好的全聯接世界。2013年,華為首超全球第一大電信設備商愛立信,排名《財富》世界500強第315位。
『陸』 華為上機編程一道題的疑問,求大神解釋一下!怎麼都不懂
在每次找到並刪除字元串後,索引減去目標字元串的長度試試
『柒』 華為的一道面試題目,請幫忙看看
首先批評 鬼火狼煙 的答案
java里針對String的 + += 編譯器會自動將String轉化成StringBuffer
《java編程思想 第2版》里 附錄A:對象的傳遞和返回
中文版759頁
英文版1054頁
重載後的「+」 以及StringBuffer 小節里說
String 類的對象被設計為恆常的,並使用了前面介紹的伴隨類技術。如果查看 JDK 文檔中
的 String 類(稍後會對此進行總結),你會發現,類中每個設計修改 String 的方法,在
修改的過程中,確實生成並返回了一批新的 String 對象。最初的 String 並沒有受到影響。
C++的 const 提供由編譯器支持的對象恆常性,Java 沒有這樣的功能。想要獲得恆常對
象,你必須自己動手,就像 String 那樣。
由於 String 對象是恆常的,對某個 String 可以隨意取多個別名。因為它是只讀的,任何
引用也不可能修改該對象,也就不會影響其他引用。所以,只讀對象很好地解決了別名問
題。
這似乎可以解決所有問題。每當需要修改對象時,就創建一堆修改過的新版對象,如同
String那樣。然而,對某些操作而言,這太沒有效率了。String的重載操作符』+』就是個重
要的例子。重載是指,對特定的類,』+』被賦予額外的含義。(為String重載的』+』和』+=』,
是Java唯一重載的操作符,而且Java不允許程序員重載其他操作符。)
使用 String 對象時,』+』用來連接 String 對象:
String s = "abc" + foo + "def" + Integer.toString(47);
你可以想像它是如何工作的。String 「abc」可能有一個 append()方法,它生成了一個連接
了」abc」和 foo 的新的 String 對象。新的 String 連接」def」之後,生成另一個新的 String,
依此類推。
C++允許程序員任意重載操作符。因為這通常是很復雜的過程,Java設計者認為這是「糟糕的」功能,
不應該包括在Java
中。它其實並沒有那麼糟糕,具有諷刺意味的是,比起C++來,在Java中使用操作符重載容易多了。
這當然可以運行,但它需要大量的中間 String 對象,才能生成最終的新 String,而那些中
間結果需要作垃圾回收。我懷疑 Java 的設計者起先就是這么做的(這是軟體設計中的一個
教訓,你無法知道所有事情,直到形成代碼,並運作起來)。我猜他們發現了這種做法有
著難以忍受的低效率。
解決之道是可變的伴隨類,類似前面演示的例子。String 的伴隨類稱作 StringBuffer,在
計算某些表達式,特別是 String 對象使用重載過的』+』和』+=』時,編譯器會自動創建
StringBuffer。下面的例子說明其中發生了什麼:
//: appendixa:ImmutableStrings.java
// Demonstrating StringBuffer.
import com.bruceeckel.simpletest.*;
public class ImmutableStrings {
private static Test monitor = new Test();
public static void main(String[] args) {
String foo = "foo";
String s = "abc" + foo + "def" + Integer.toString(47);
System.out.println(s);
// The "equivalent" using StringBuffer:
StringBuffer sb =
new StringBuffer("abc"); // Creates String!
sb.append(foo);
sb.append("def"); // Creates String!
sb.append(Integer.toString(47));
System.out.println(sb);
monitor.expect(new String[] {
"abcfoodef47",
"abcfoodef47"
});
}
} ///:~
在生成 String s 的過程中,編譯器使用 sb 執行了大致與下面的工作等價的代碼:創建一
個 StringBuffer,使用 append()向此 StringBuffer 對象直接添加新的字元串(而不是每
次製作一個新的副本)。雖然這種方法更高效,但是對於引號括起的字元串,例如」abc」
和」def」,它並不起作用,編譯器會將其轉為 String 對象。所以,盡管 StringBuffer 提供
了更好的效率,可能仍會產生超出你預期數量的對象。
String 和 StringBuffer 類
下面總結了 String 與 StringBuffer 都可用的方法,你可以感受到與它們交互的方式。表
中並未包含所有方法,只包含了與本討論相關的重要方法。重載的方法被置於單獨一列。
首先是 String 類:
方法 參數,重載 用途
Constructor 重載: 預設、空參數、 創建 String 對象。
String、StringBuffer、
char 數組、byte 數組.
length( ) String 的字元數。
charAt( ) int 索引 在 String 中指定位置的
字元。
getChars( ), 復制源的起點與終點、 復 復制 char 或 byte 到外部
getBytes( ) 制的目標數組、目標數組的 數組。
索引。
toCharArray( ) 生成 char[],包含 String
的所有字元。
equals( ), 做比較的 String 兩個 String 的等價測試。
equals-IgnoreCase( )
compareTo( ) 做比較的 String 根據詞典順序比較 String
與參數,結果為負值、零、
或正值。大小寫有別。
indexOf( ), 重載: char、char 和起 如果當前 String 中不包含
lastIndexOf( ) 始索引、String、String 參數,返回-1,否則返回參
和起始索引. 數在 String 中的位置索引。
LastIndexOf()由末端反
向搜索。
substring( ) 重載: 起始索引、起始索引 返回新的 String 對象,包
和終止索引 含特定的字元集。
concat( ) 要連接的 String 返回新 String 對象,在原
String 後追加參數字元。
replace( ) 搜索的舊字元,用來替代的 返回指定字元被替換後的新
新字元 String 對象。如果沒有發生
替換,返回原 String。
成一個且僅生成一個 String
引用。
可以看到,當必須修改字元串的內容時,String的每個方法都會謹慎地返回一個新的String
對象。還要注意,如果內容不需要修改,方法會返回指向源 String 的引用。這節省了存儲
空間與開銷。
以下是 StringBuffer 類:
方法 參數, 重載 用途
Constructor 重載: 空參數、要創建的緩沖區 創建新的 StringBuffer
長度、String 的來源. 對象。
toString( ) 由此 StringBuffer 生成
String。
length( ) StringBuffer 中的字元
個數。
setLength( ) 代表緩沖區中字元串長度的整數 截短或擴展原本的字元串。
如果擴展,以 null 填充新
增的空間。
charAt( ) 代表所需元素位置的整數。 返回 char 在緩沖區中的
位置。
setCharAt( ) 代表所需元素位置的整數,和新 修改某位置上的值。
的 char 值
getChars( ) 復制源的起點與終點、復制的目 復制 char 到外圍數組。沒
的端數組、目的端數組的索引。 有 String 中的
getBytes( ) 。
append( ) 重載: Object、String、 參數轉為字元串,然後追加
char[]、char[] 和偏移和長 到當前緩沖區的末端,如果
度、boolean、char、int、 必要,緩沖區會擴大。
long、float、double.
insert( ) 被重載過,第一個參數為插入起 第二個參數轉為字元串,插
始點的偏移值: Object、 入到當前緩沖區的指定位
String、char[]、boolean、置。如果必要,緩沖區會擴
char、int、long、float、 大。
double.
最常用的方法是 append(),當計算包含』+』和』+=』操作符的 String 表達式時,編譯器會使
用它。Insert()方法有類似的形式,這兩個方法都會在緩沖區中進行大量操作,而不需創建
新對象。
String 是特殊的
到目前為止,你已經看到了,String 類不同於 Java 中一般的類。 String 有很多特殊之處,
它不僅僅只是一個 Java 內置的類,它已經成為 Java 的基礎。而且事實上,雙引號括起的
字元串都被編譯器轉換為 String 對象,還有專門重載的』+』和』+=』操作符。在本附錄中,
你還能看到其他特殊之處:使用伴隨類 StringBuffer 精心建構的恆常性,以及編譯器中的
一些額外的魔幻式的功能。
/**********
對象操作效率低下
況且java的對象都在堆里
原文對對象重復進行操作
純粹是傻瓜蛋行為
**********/
// **********************************************************
public static String countStr(int count)
{
char ch [ ] = new char[count];
for(int i = 0; i < count; i++)
ch [i] = 'A';
String str = new String(ch);
return str;
}
// **********************************************************
『捌』 華為編程題3題只過了1題能錄取嗎
不能錄取
華為筆試過程:
投遞簡歷華為每年都會到高校進行宣講,直講會現場可以進行簡歷的投送,如果您錯過了宣講會,沒有關系,您還可以直接到華為的官網進行簡歷投遞,官網地址可以通過網路進行查詢
上機考試投遞簡歷後,您所需要做的就是等待華為的通知。
性格測試在上機考試後不久,華為會通知你到指走的網址進行性格測試,那個沒有難度可言,你所要做的,就是實事求是地進行回答
技術面性格測試通過後,華為會通知你進行面試,第-輪是技術面,面試你的是個有經驗的研發人員。這一輪是所有環節裡面最重要的。你的表現特影響到你是否能被錄用。最重要的是態度,在遇到不會的問題的時候,要誠懇地說出來,然後把自己知道的與問題有關的知識說出來,民現目己樂觀積極的態度,對你的面試結果會有很大的幫助,當然:你也需要較扎實的專業基礎。
Boss面這是最後一輪面試了,面試你的是華為公司的管理層,問的都是一-些生活方面的問題技術方面的門題問得很少,你所需要做的,依然是誠懇。
『玖』 華為招聘時的綜合測試、英語測試以及面試會考些什麼呢
1.能力測試、英語水平測試和面試,我想請知情人講講這三項都會考些啥題?
答:能力測試會做腦筋轉彎的題目,還有邏輯計算的數學題,華為多數字為軟體開發工程師,所以提別注重邏輯思維的能力。
英語水平測,這個就是常規的考試,難度一般,只要你已經輕松考過四級。
面試,基本問題不大,就是和老總談話,問題不大。
2.尤其是專業考查的題目?
答:你既然是學習計算機的,肯定你要有一定的編程能力,會有程序設計題,說不定還要上機考。你的編程語言基礎一定要好。
3.祝你成功!