- 相關(guān)推薦
筆試題(循環(huán))
在學(xué)習(xí)和工作中,我們很多時候都會有考試,接觸到試題,試題是參考者回顧所學(xué)知識和技能的重要參考資料。你知道什么樣的試題才能切實地幫助到我們嗎?下面是小編精心整理的筆試題(循環(huán)),歡迎大家分享。
筆試題循環(huán) 1
一、簡答題(25分)
1、頭文件中的 ifndef/define/endif 干什么用?
2、#include %26lt;filename.h%26gt; 和
#include "filename.h" 有什么區(qū)別?
3、const 有什么用途?(請至少說明兩種)
4、在C++ 程序中調(diào)用被 C編譯器編譯后的函數(shù),
為什么要加 extern "C"聲明?
5、請簡述以下兩個for循環(huán)的優(yōu)缺點
// 第一個for (i=0; i%26lt;N; i++)
{if (condition)
DoSomething();
else
DoOtherthing();}
優(yōu)點:缺點:
// 第二個if (condition)
{for (i=0; i%26lt;N; i++)
DoSomething();}
else{
for (i=0; i%26lt;N; i++) DoOtherthing();}
優(yōu)點:缺點:
二、有關(guān)內(nèi)存的思考題(20分)
void GetMemory(char *p)
{
p = (char *)malloc(100);
}
void Test(void)
{
char *str = NULL;GetMemory(str);
strcpy(str, "hello world");
printf(str);
}請問運行Test函數(shù)會有什么樣的結(jié)果?答:
char *GetMemory(void)
{
char p[] = "hello world";
return p;
}
void Test(void)
{
char *str = NULL;
str = GetMemory();
printf(str);
}
請問運行Test函數(shù)會有什么樣的結(jié)果?答:
Void GetMemory2(char **p, int num)
{
*p = (char *)malloc(num);
}
void Test(void)
{
char *str = NULL;
GetMemory(%26str, 100);
strcpy(str, "hello");
printf(str);
}
請問運行Test函數(shù)會有什么樣的'結(jié)果?答:
void Test(void)
{
char *str = (char *) malloc(100);
strcpy(str, "hello");
free(str);
if(str != NULL)
{
strcpy(str, "world");
printf(str);
}
}
請問運行Test函數(shù)會有什么樣的結(jié)果?答:
三、編寫strcpy函數(shù)(10分)
已知strcpy函數(shù)的原型是
char *strcpy(char *strDest, const char *strSrc);
其中strDest是目的字符串,strSrc是源字符串。
。1)不調(diào)用C++/C的字符串庫函數(shù),請編寫函數(shù) strcpy
。2)strcpy能把strSrc的內(nèi)容復(fù)制到strDest,為什么還要char * 類型的返回值?
筆試題循環(huán) 2
一、單選題(每題 2 分,共 30 分)
在 C 語言中,以下哪種循環(huán)結(jié)構(gòu)會先執(zhí)行一次循環(huán)體,然后再判斷條件是否成立,若成立則繼續(xù)執(zhí)行循環(huán)體?( )
A. for 循環(huán)
B. while 循環(huán)
C. do-while 循環(huán)
D. 以上都不是
下面關(guān)于 C 語言for循環(huán)的描述,正確的是( )。
A.for循環(huán)的初始化表達式、條件表達式和更新表達式都必須存在,缺一不可
B.for循環(huán)只能用于已知循環(huán)次數(shù)的情況
C.for循環(huán)在執(zhí)行完循環(huán)體后,會再次判斷條件表達式是否成立,以決定是否繼續(xù)執(zhí)行循環(huán)體
D.for循環(huán)的條件表達式只能是簡單的比較運算,如i < 10
以下 C 語言代碼片段:
展開過程
這段代碼的輸出結(jié)果是( )。
A. 1 2 3 4 5
B. 1 2 3 4
C. 2 3 4 5
D. 5 4 3 2 1
在 C 語言中,do-while循環(huán)的條件判斷是在( )進行的。
A. 執(zhí)行循環(huán)體之前
B. 執(zhí)行循環(huán)體之后
C. 每次執(zhí)行循環(huán)體時同時進行
D. 不需要進行條件判斷
若要計算從 1 到 100 的整數(shù)之和,以下哪種 C 語言循環(huán)結(jié)構(gòu)實現(xiàn)起來代碼相對更簡潔?( )
A. for 循環(huán)
B. while 循環(huán)
C. do-while 循環(huán)
D. 三種循環(huán)實現(xiàn)起來都一樣簡潔
以下 C 語言for循環(huán)代碼:
展開過程
此代碼的輸出結(jié)果是( )。
A. 1 2 3 4 5 6 7 8 9
B. 1 3 5 7 9
C. 2 4 6 8 10
D. 1 4 7
在 C 語言中,如果在for循環(huán)的初始化表達式中聲明了循環(huán)變量,那么該變量的作用域是( )。
A. 整個程序
B. 從聲明處到文件末尾
C. 僅限于for循環(huán)內(nèi)部
D. 從聲明處到函數(shù)末尾
對于 C 語言的while循環(huán),以下說法錯誤的是( )。
A.while循環(huán)的條件表達式可以是任何能夠返回布爾值(在 C 語言中,非零值表示真,零值表示假)的表達式
B.while循環(huán)體內(nèi)部可以包含其他循環(huán)結(jié)構(gòu),形成嵌套循環(huán)
C.while循環(huán)在每次執(zhí)行循環(huán)體之前都會判斷條件是否成立
D.while循環(huán)只能用于處理整數(shù)類型的數(shù)據(jù)
以下 C 語言代碼片段:
展開過程
這段代碼的輸出結(jié)果是( )。
A. 5 4 3 2 1
B. 5 4 3 2
C. 4 3 2 1
D. 1 2 3 4 5
在 C 語言中,以下哪種情況最有可能導(dǎo)致for循環(huán)出現(xiàn)無限循環(huán)?( )
A. 初始化表達式設(shè)置錯誤,導(dǎo)致循環(huán)變量初始值過大
B. 條件表達式永遠為真,例如for (int i = 1; 1; i++)
C. 更新表達式忘記設(shè)置,導(dǎo)致循環(huán)變量無法更新
D. 以上情況都有可能導(dǎo)致無限循環(huán)
假設(shè)要在 C 語言中使用while循環(huán)實現(xiàn)一個功能:等待用戶輸入一個非零值,以下代碼正確的是( )。
A.
展開過程
B.
展開過程
C.
展開過程
D.
展開過程
在 C 語言中,以下關(guān)于do-while循環(huán)和while循環(huán)的比較,正確的是( )。
A.do-while循環(huán)和while循環(huán)在語法上完全相同,只是執(zhí)行順序不同
B.do-while循環(huán)至少會執(zhí)行一次循環(huán)體,而while循環(huán)可能一次都不執(zhí)行
C.do-while循環(huán)只能用于處理整數(shù)類型的數(shù)據(jù),while循環(huán)則可以處理任何數(shù)據(jù)類型
D.do-while循環(huán)的執(zhí)行效率比while循環(huán)高
以下 C 語言for循環(huán)代碼:
展開過程
此代碼的輸出結(jié)果是( )。
A. 10 9 8 7 6 5 4 3 2 1
B. 9 6 3
C. 10 7 4 1
D. 8 5 2
在 C 語言中,要遍歷一個數(shù)組int arr[5] = {1, 2, 3, 4, 5},以下哪種循環(huán)結(jié)構(gòu)使用起來更符合習(xí)慣且不容易出錯?( )
A. for 循環(huán)
B. while 循環(huán)
C. do-while 循環(huán)
D. 三種循環(huán)都一樣符合習(xí)慣且不容易出錯
以下 C 語言代碼片段:
展開過程
這段代碼的輸出結(jié)果是( )。
A. 1 2 3 4 5 6 7 8 9
B. 2 4 6 8
C. 1 3 5 7 9
D. 8 6 4 2
二、多選題(每題 3 分,共 30 分)
在 C 語言中,以下哪些是for循環(huán)的常見應(yīng)用場景?( )
A. 計算從 1 到某個指定數(shù)的'累加和
B. 遍歷數(shù)組中的元素
C. 等待用戶輸入正確的值,直到滿足條件為止
D. 在圖形繪制中,用于生成重復(fù)的圖案
E. 實現(xiàn)計數(shù)功能,如統(tǒng)計某個事件發(fā)生的次數(shù)
以下關(guān)于 C 語言while循環(huán)的說法,正確的是( )。
A.while循環(huán)的條件表達式可以是邏輯表達式、關(guān)系表達式等能返回布爾值的表達式
B.while循環(huán)體內(nèi)部可以有多個語句,需要用花括號括起來形成語句塊
C.while循環(huán)在每次執(zhí)行循環(huán)體之前都會判斷條件是否成立,若不成立則跳過循環(huán)體
D.while循環(huán)可以嵌套使用,即一個while循環(huán)內(nèi)部可以包含另一個while循環(huán)
E.while循環(huán)的條件表達式必須是簡單的比較運算,如i < 10
在 C 語言中,do-while循環(huán)的特點包括( )。
A. 先執(zhí)行一次循環(huán)體,然后再判斷條件是否成立
B. 條件表達式可以是任何能夠返回布爾值的表達式
C. 循環(huán)體內(nèi)部可以包含其他循環(huán)結(jié)構(gòu),形成嵌套循環(huán)
D. 至少會執(zhí)行一次循環(huán)體
E. 通常用于已知循環(huán)次數(shù)的情況
在 C 語言中,以下哪些情況可能導(dǎo)致循環(huán)出現(xiàn)無限循環(huán)的問題?( )
A. 循環(huán)條件永遠為真,例如while (true)或for (int i = 1; 1; i++)
B. 忘記在循環(huán)體內(nèi)更新循環(huán)變量,導(dǎo)致條件表達式始終滿足
C. 循環(huán)體內(nèi)部出現(xiàn)錯誤,導(dǎo)致程序無法正常執(zhí)行到更新循環(huán)變量的語句
D. 使用for循環(huán)時,初始化表達式、條件表達式和更新表達式的設(shè)置不合理,使得條件永遠滿足
E. 在嵌套循環(huán)中,內(nèi)層循環(huán)的條件依賴于外層循環(huán)的變量,且設(shè)置不當導(dǎo)致內(nèi)層循環(huán)無法結(jié)束
當使用 C 語言for循環(huán)遍歷一個數(shù)組時,以下哪些操作是常見的?( )
A. 直接通過循環(huán)變量作為數(shù)組下標來訪問數(shù)組元素
B. 在循環(huán)體內(nèi)對數(shù)組元素進行修改
C. 計算數(shù)組元素的總和、平均值等統(tǒng)計信息
D. 查找數(shù)組中滿足特定條件的元素,如最大值、最小值或特定值的元素
E. 向數(shù)組中添加新元素或刪除現(xiàn)有元素(需要配合其他操作,因為單純for循環(huán)一般不能直接實現(xiàn)添加刪除功能)
在 C 語言中,以下關(guān)于循環(huán)結(jié)構(gòu)與變量聲明的說法,正確的是( )。
A. 在for循環(huán)的初始化表達式中可以聲明循環(huán)變量,其作用域僅限于for循環(huán)內(nèi)部
B. 在while循環(huán)體內(nèi)部聲明的變量,其作用域從聲明處到while循環(huán)結(jié)束
C. 在do-while循環(huán)體內(nèi)部聲明的變量,其作用域從聲明處到do-while循環(huán)結(jié)束
D. 無論在何種循環(huán)結(jié)構(gòu)內(nèi)部聲明的變量,其作用域都是整個函數(shù)
E. 可以在循環(huán)結(jié)構(gòu)外部聲明循環(huán)變量,然后在循環(huán)體內(nèi)使用
在 C 語言中,以下哪些是在編寫循環(huán)代碼時需要注意的要點?( )
A. 明確循環(huán)的目的和要達到的效果,確保循環(huán)體內(nèi)部的代碼能夠?qū)崿F(xiàn)預(yù)期的功能
B. 正確設(shè)置循環(huán)條件,避免出現(xiàn)無限循環(huán)或循環(huán)次數(shù)不足的情況
C. 注意循環(huán)變量的更新,保證循環(huán)能夠按照預(yù)期的方式進行
D. 在嵌套循環(huán)中,要注意內(nèi)層循環(huán)和外層循環(huán)的關(guān)系,避免變量沖突和邏輯混亂
E. 當循環(huán)結(jié)束后,要對循環(huán)變量或相關(guān)的數(shù)據(jù)結(jié)構(gòu)進行必要的清理或后續(xù)處理
在 C 語言中,以下關(guān)于for循環(huán)、while循環(huán)和do-while循環(huán)的比較,正確的是( )。
A.for循環(huán)在已知循環(huán)次數(shù)的情況下使用較為方便,如計算從 1 到 100 的累加和
B.while循環(huán)更適合于不知道循環(huán)次數(shù)但知道循環(huán)結(jié)束條件的情況,如等待用戶輸入正確的值
C.do-while循環(huán)至少會執(zhí)行一次循環(huán)體,適用于需要先執(zhí)行一次操作再根據(jù)條件判斷是否繼續(xù)的情況
D. 三種循環(huán)在執(zhí)行效率上沒有明顯區(qū)別,主要取決于循環(huán)體內(nèi)部代碼的復(fù)雜程度和執(zhí)行次數(shù)
E. 三種循環(huán)都可以嵌套使用,形成多層嵌套循環(huán)
在 C 語言中,以下哪些是while循環(huán)的常見應(yīng)用場景?( )
A. 實現(xiàn)一個計數(shù)器,不斷增加計數(shù)直到達到某個指定值
B. 等待用戶輸入正確的值,不斷重復(fù)輸入過程直到滿足條件
C. 遍歷一個字符串,逐個字符進行處理
D. 在圖形繪制中,用于生成重復(fù)的圖案
E. 計算從 1 到某個指定數(shù)的累加和
在 C 語言中,以下關(guān)于循環(huán)結(jié)構(gòu)的說法,正確的是( )。
A. 循環(huán)結(jié)構(gòu)可以與條件語句結(jié)合使用,例如在循環(huán)體內(nèi)部根據(jù)條件判斷執(zhí)行不同的操作
B. 循環(huán)結(jié)構(gòu)可以嵌套使用,即一個循環(huán)內(nèi)部可以包含另一個循環(huán),以實現(xiàn)更復(fù)雜的功能
C. 循環(huán)結(jié)構(gòu)是 C 語言中實現(xiàn)重復(fù)操作的重要手段
D. 循環(huán)結(jié)構(gòu)的執(zhí)行流程是先判斷條件是否成立,若成立則執(zhí)行循環(huán)體,然后再判斷條件是否成立,如此反復(fù)
E. 不同的循環(huán)結(jié)構(gòu)(for、while、do-while)在功能上是完全相同的,只是語法不同
答案
單選題
C
C
A
B
A
B
C
D
A
D
B
B
B
A
B
多選題答案
ABDE
ABCD
ABCD
ABCDE
ABCD
ABCE
ABCDE
ABCDE
ABC
ABC
【筆試題循環(huán)】相關(guān)文章:
筆試題(數(shù)學(xué)循環(huán))12-08
中興2015筆試題08-22
迅雷2011.10.21筆試題09-09
360筆試題分享10-09
360筆試題目201509-20
華為2014筆試題目04-06
華為2015年筆試題06-30
華為2017筆試試題07-06
安永2015筆試題目06-26