摘要:這些題目都是歷年筆試的必考題,大家一定要仔細(xì)看看這里面涉及的知識點(diǎn)呀,這樣筆試的時(shí)候才能過過過呀
說到C語言,可能有人覺得太簡單了
這有啥好說的
但素,,,,
今天小姐姐就遇到了一個這樣的事
所以說C語言里面坑還是很多的
今天就給大家準(zhǔn)備了幾個筆試經(jīng)典的題目
可以助大家順利通過筆試
1. 以下敘述中不正確的是(D)
A.在不同的函數(shù)中可以使用相同名字的變量
B.函數(shù)中的形式參數(shù)是在棧中保存
C.在一個函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效
D.在一個函數(shù)內(nèi)復(fù)合語句中定義的變量在本函數(shù)范圍內(nèi)有效
(復(fù)合語句值函數(shù)中的成對括號構(gòu)成)
注:D項(xiàng)是有錯誤的比如我舉個例子
#includeint man() { { int a=10; } printf("%d ",a); return 0; }
這個如果再編譯中,一定會出現(xiàn),a未定義的錯誤的。
2.
#include#include int main() { int i; char acNEW[20]; for (i = 0; i < 5; i++) { acNEW[i] = "0"; } printf("%d ", strlen(acNEW)); system("pause"); return 0; }
問題是求輸出結(jié)果:
這個答案應(yīng)該不確定,因?yàn)樗跒樽址麛?shù)組賦值時(shí),并未賦 "0" ,但是strlen函數(shù)認(rèn)為結(jié)束的標(biāo)準(zhǔn)就是 "0" ,所以當(dāng)它讀到最后一位他會繼續(xù)走下去,直到它遇到 "0"。
因?yàn)楹竺媸抢鴶?shù)據(jù)都是隨機(jī)的,所以strlen函數(shù)在讀時(shí)直到遇到 "0" 它才會停下來,所以答案是不確定的。
3.全局變量可以定義在被多個.c文件包含著的頭文件中?
錯誤
這個在編譯時(shí)會報(bào)錯的,但是如果使用static修飾就可以編譯通過。
4.在X86下,有這些程序:
includeinclude int main() { union { short k; char i[2]; }*s,a; s = &a; s->i[0] = 0x39; s->i[1] = 0x38; printf("%x ", a.k); system("pause"); return 0; } } ?
?
這道題問的是輸出的什么?這里牽扯的知識點(diǎn) 聯(lián)合體和大小端存儲,x86是小端存儲,這種東西就得靠記了。。沒辦法大家都知道聯(lián)合體空間公用對吧,short長度為2B,char i[2]長度也為2B.所以你的a.k雖然并未賦值,但是你等于輸出了char i[2]數(shù)組中的內(nèi)容,他們雖然名字不同現(xiàn)在他們內(nèi)容是一樣的。這就考驗(yàn)我們大小端的概念了。
接下來下面是我畫的這道題的理解圖:
大家也知道讀取數(shù)據(jù)一般是從高位開始讀,比如一個數(shù)字 120 我們肯定是先看他最大的位對吧(高位),所以這道題的答案是 3839
我再截圖驗(yàn)證一下:
5.求下列程序輸出結(jié)果
#include#include int main() { unsigned char a = 200; unsigned char b = 100; unsigned char c = 0; c = a + b; printf("%d %d", a + b, c); system("pause"); return 0; }
這道題主要考的是你對unsigned的理解,接下來我畫一張圖幫大家理解
現(xiàn)在我說的對不對呢?大家看看輸出結(jié)果
6.在x86,vc++ 6.0環(huán)境下,有下列程序
#include#include int main() { char c; unsigned char uc; unsigned short us; c = 128; uc = 128; us = c + uc; printf("0x%x ", us); us = (unsigned char)c + uc; printf("0x%x ", us); us = c + (char)uc; printf("0x%x ", us); system("pause"); return 0; }
做這道題前應(yīng)該知道 char 的取值范圍是-128 ~ 127,所以當(dāng)你給uc賦128的時(shí)候,它真實(shí)的值為-128。
具體我說的對不對?看看運(yùn)行結(jié)果。
7.
#include#include struct tagAAA { unsigned char ucld : 1; unsigned char ucpara : 2; unsigned char ucState : 6; unsigned char ucTail : 4; unsigned char ucAvail; unsigned char ucTail2; unsigned char ucData; }AAA_S1; struct tagAAA2 { unsigned int ucld : 1; unsigned int ucpara : 2; unsigned int ucState : 6; unsigned int ucTail : 4; unsigned int ucAvail; unsigned int ucTail2; unsigned int ucData; }AAA_S2; int main() { printf("%d %d ", sizeof(AAA_S1), sizeof(AAA_S2)); system("pause"); return 0; } ?
求AAA_S再分別為1字節(jié)對齊和四字節(jié)對齊的情況下,占用空間的大小:?
答案為 6 16.
這個問題就是位域的問題,我有專門關(guān)于結(jié)構(gòu)體對齊的博客,點(diǎn)擊這個鏈接就能看https://blog.csdn.net/Dawn_sf...
8.
#include#include #pragma pack(4); int main() { unsigned char puc[4]; struct sagPIM{ unsigned char ucpim1; unsigned char ucDate:1; unsigned char ucDate1:2; unsigned char ucDate2:3; }*pstPimData; pstPimData = (struct sagPIM*)puc; memset(puc, 0, 4); pstPimData->ucpim1 = 2; pstPimData->ucDate = 3; pstPimData->ucDate1 = 4; pstPimData->ucDate2 = 5; printf("%02x %02x %02x %02x ", puc[0], puc[1], puc[2], puc[3]); system("pause"); return 0; } ?
?
?
這個主要還是位域,還有存儲的一些關(guān)系了。
因?yàn)榘凑瘴挥虼鎯Γ摻Y(jié)構(gòu)體只需要2個字節(jié)即可存儲全部內(nèi)容,然后開始思考他內(nèi)部的結(jié)構(gòu)。
下來我畫一個圖理解一下。
再看看運(yùn)行的結(jié)果吧 有圖有真相。
這些題目都是歷年筆試的必考題,大家一定要仔細(xì)看看這里面涉及的知識點(diǎn)呀,這樣筆試的時(shí)候才能過過過呀~~
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/31354.html
摘要:這些題目都是歷年筆試的必考題,大家一定要仔細(xì)看看這里面涉及的知識點(diǎn)呀,這樣筆試的時(shí)候才能過過過呀 說到C語言,可能有人覺得太簡單了 這有啥好說的 但素,,,, 今天小姐姐就遇到了一個這樣的事showImg(https://segmentfault.com/img/bVbrUQV); 所以說C語言里面坑還是很多的 今天就給大家準(zhǔn)備了幾個筆試經(jīng)典的題目 可以助大家順利通過筆試 1. 以下...
摘要:這些題目都是歷年筆試的必考題,大家一定要仔細(xì)看看這里面涉及的知識點(diǎn)呀,這樣筆試的時(shí)候才能過過過呀 說到C語言,可能有人覺得太簡單了 這有啥好說的 但素,,,, 今天小姐姐就遇到了一個這樣的事showImg(https://segmentfault.com/img/bVbrUQV); 所以說C語言里面坑還是很多的 今天就給大家準(zhǔn)備了幾個筆試經(jīng)典的題目 可以助大家順利通過筆試 1. 以下...
摘要:這些題目都是歷年筆試的必考題,大家一定要仔細(xì)看看這里面涉及的知識點(diǎn)呀,這樣筆試的時(shí)候才能過過過呀 說到C語言,可能有人覺得太簡單了 這有啥好說的 但素,,,, 今天小姐姐就遇到了一個這樣的事showImg(https://segmentfault.com/img/bVbrUQV); 所以說C語言里面坑還是很多的 今天就給大家準(zhǔn)備了幾個筆試經(jīng)典的題目 可以助大家順利通過筆試 1. 以下...
摘要:這些題目都是歷年筆試的必考題,大家一定要仔細(xì)看看這里面涉及的知識點(diǎn)呀,這樣筆試的時(shí)候才能過過過呀 說到C語言,可能有人覺得太簡單了 這有啥好說的 但素,,,, 今天小姐姐就遇到了一個這樣的事showImg(https://segmentfault.com/img/bVbrUQV); 所以說C語言里面坑還是很多的 今天就給大家準(zhǔn)備了幾個筆試經(jīng)典的題目 可以助大家順利通過筆試 1. 以下...
摘要:這些題目都是歷年筆試的必考題,大家一定要仔細(xì)看看這里面涉及的知識點(diǎn)呀,這樣筆試的時(shí)候才能過過過呀 說到C語言,可能有人覺得太簡單了 這有啥好說的 但素,,,, 今天小姐姐就遇到了一個這樣的事showImg(https://segmentfault.com/img/bVbrUQV); 所以說C語言里面坑還是很多的 今天就給大家準(zhǔn)備了幾個筆試經(jīng)典的題目 可以助大家順利通過筆試 1. 以下...
閱讀 998·2023-04-26 02:21
閱讀 2817·2021-09-24 09:47
閱讀 1607·2019-08-30 15:55
閱讀 2163·2019-08-30 14:01
閱讀 2320·2019-08-29 14:01
閱讀 2048·2019-08-29 12:46
閱讀 814·2019-08-26 13:27
閱讀 1933·2019-08-26 12:23