版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、。筆試題一、填空題 ( 每個空 4 分,共 28 分)1)struct tagABCchar name 10;char sex ;long sno ;float score 4;*pAbc;( 四字節(jié)對齊 )pAbc=NULL;那么,執(zhí)行 pAbc+=2;之后 pAbc 的值為( 64 )2)如下代碼,最終 value 的值是( 8 )int *p1,*p2;int value;p1=(int*)0 ×400;p2=(int*)0 ×408;value = p2-p1;3)如下代碼, printf 的結(jié)果為( 2 )#include stdio.h #include str
2、ing.h void main(void)char acNew 20= “00 ”;printf( “%dn”,strlen(acNew);4) 有如下程序段,運(yùn)行該程序的輸出結(jié)果是( 33 )main ()int y=3,x=3,z=1;printf( “%d%dn”,(+x,y+),z+2);5) 設(shè)有: int a=1,b=2,c=3,d=4,m=2,n=2;執(zhí)行 (m=a>b)&&(n=c>d) 后,n 的值為 ( 2 )6)struct tagAAAUnsigned char ucId:1;Unsigned char ucPara0:2;Unsigned
3、char ucState:6 ;Unsigned char ucTail:4;Unsigned char ucAvail;Unsigned char unTail2:4;。1。Unsigned long ulData;AAA_S問:AAA_S在字節(jié)對齊分別為 1,4 情況下,占用的空間大小分別是多少?( 9 )( 12 )二、選擇題 ( 每題 2 分,共 34 分)1) 若有說明 int (*p )3 ;以下敘述正確的是( D )A:p 是指針數(shù)組B:(*p)3 和*p3 等價C:p 是指向一維數(shù)組中任何一個元素的指針D:p 是指向含有 3 個整型元素的一維數(shù)組的指針2) 以下關(guān)于單元測試的描
4、述,哪些是對的?( D )A :黑盒測試針對軟件的功能,不考慮功能的實(shí)現(xiàn)細(xì)節(jié);B :白盒測試針對源代碼的測試,從程序功能的具體實(shí)現(xiàn)上找錯;C :路徑覆蓋是黑盒測試的一種方法,編寫測試用例使程序的每條語句都能走到;D :條件覆蓋是百盒測試的一種方法 , 編寫測試用例使程序的每個判斷的各種情況都能到3) 以下可以用于任務(wù)間通信的有( ABCD )A :共享內(nèi)存 B: 信號量C :消息隊(duì)列和管道 D :socket 調(diào)用4) 有關(guān)結(jié)構(gòu),以下哪些描述是對的?( BC )A:為了測試方便,盡量把一個結(jié)構(gòu)的功能設(shè)計(jì)得多一些B:不同結(jié)構(gòu)間的關(guān)系不要過于復(fù)雜C:結(jié)構(gòu)中的各元素應(yīng)代表同一事務(wù)的不同側(cè)面,而不應(yīng)把
5、描述沒有關(guān)系或關(guān)系很弱的不同事務(wù)的元素放到同一結(jié)構(gòu)中D:結(jié)構(gòu)中元素的布局與排列順序可以隨意設(shè)計(jì)5) 關(guān)于強(qiáng)制類型轉(zhuǎn)化,下面說法正確的是( ABCD)A: 當(dāng)目的結(jié)構(gòu)的空間大于源結(jié)構(gòu)的空間時, 要重點(diǎn)關(guān)注內(nèi)存訪問超過源結(jié)構(gòu)范圍的情形,可能越界;B: 當(dāng)目的結(jié)構(gòu)的空間小于源結(jié)構(gòu)的空間時,要重點(diǎn)關(guān)注對目的結(jié)構(gòu)賦值不能完全覆蓋源結(jié)構(gòu)范圍的情形,可能遺漏;C :結(jié)構(gòu)體之間的強(qiáng)制類型轉(zhuǎn)換時,其成員字段的數(shù)據(jù)類型的差異也是要格外小心的;D :與結(jié)構(gòu)體之間的強(qiáng)制類型轉(zhuǎn)換相比, 基本數(shù)據(jù)結(jié)構(gòu)的強(qiáng)制類型轉(zhuǎn)換更容易出現(xiàn)上面描述的情況,使用的時候,一定要慎之又慎;6) 正確的使用 assert ,軟件系統(tǒng)不會對人為原
6、因造成的錯誤進(jìn)行處理。 它有利于 ( A BCD)A :缺陷及早暴露,加快定位進(jìn)程;B :明確表示函數(shù)接口或算法邏輯的校驗(yàn)關(guān)系,增強(qiáng)軟件代碼的可讀性;C :去除不必要的容錯處理,簡化代碼處理流程,降低軟件處理復(fù)雜度;D :強(qiáng)化編程接口之間的契約,增強(qiáng)軟件的可維護(hù)性;7) 對于循環(huán)體的執(zhí)行效率,下述說法正確的是( ABCD )A :循環(huán)體內(nèi)工作量最小化B :在多重循環(huán)中,應(yīng)將最忙的循環(huán)放在最內(nèi)層C :盡量減少循環(huán)的嵌套層次D :避免在循環(huán)體內(nèi)做無謂的判斷語句,將循環(huán)語句置于判讀語句的代碼塊之中8) 設(shè)數(shù)組 a5=10,20,30,40,50 ;已知指針 p 指向 a1 ;則表達(dá)式 *+p 的值是
7、( A )。2。A 20B 21C 30D 319) 有以下程序段 , 執(zhí)行后, mul 的值為( B )int a =1,3,5,7,9;int mul, *data, x;mul=1;data=&a1;for (x=0; x<3; x+ ) mul *= *(data+x);A 15B 105C 315D 94510) 有以下程序段,執(zhí)行后的結(jié)果為( D)int list =6,7,8,9,10;int * p;p=list;*(p+2)=10;printf( ”%d, %dn ”,*p,*(p+2);A 8, 10B 6, 8C 7, 9D 6, 1011) 以下語句不能正
8、確賦值的是( A)A char s110; s1= ”China ”;B char s2 = C, h, i , n, a;C char s320= ”China ”;D char *s= ”China” ;12) C語言中,定義 PI 為一個符號常量,正確的是( A)A #define PI 3.14B define PI 3.14C #include PI 3.14D include PI 3.1413) 有以下程序,該程序輸出的結(jié)果為( B)#define N 3#define M N+2#define NUM 2*M+1main()int i ;i=NUM ;printf( ”%dn”
9、,i);。3。A 11 、B 9C 7D 514) 有以下程序,程序運(yùn)行后的輸出結(jié)果是( D )#include <string.h>#include <stdio.h>main() char *p= “abcde0fghjik0 ”;printf( “%dn” , strlen(p); A 12B 15C 6D 515) 為了比較兩個字符串 s1 和 s2 是否相等,應(yīng)當(dāng)使用( C )A if (s1=s2 )B if (s1=s2 )C if (strcmp(s1, s2)=0 )D if (strcmp(&s1, &s2)=0 )16) 設(shè)有如下結(jié)
10、構(gòu)定義:struct student int num;char name20;char sex;int age;char addr30; stud ;若用 printf( “%sn”, )訪問該結(jié)構(gòu)中 name值的正確方法是( D )A stud->nameB &C stud.&nameD 17) 想對一個文本文件的尾部追加寫入, 應(yīng)當(dāng)在 fopen 語句中使用的文件操作方式指示符號為( D )A wB rC wbD a三、指出下列程序的錯誤(每題 4 分,共 20 分)1). 如下程序用于輸出 "Welcome Home&q
11、uot;。請指出其中的錯誤: (4 分)。4。void Test(void)char pcArray12;strcpy(pcArray,"Welcome Home");printf("%s!", pcArray);return;答案:數(shù)組越界。2). 如下程序用于把 "blue" 字符串返回,請指出其中的錯誤: (4 分)char *GetBLUE(void)char* pcColor ;char* pcNewColor;pcColor = "blue"pcNewColor = (char*)malloc(strl
12、en(pColor);if(NULL = pcNewColor)return NULL;strcpy(pcNewColor, pcColor);return pcNewColor;答案:申請內(nèi)存空間不足,字符串結(jié)尾還有 '0' 。3). 下面程序期望輸出 str = hello world ,請指出其中的錯誤: (4 分)char * GetStr(char *p)p = "hello world"return p;void main()char *str = NULL;if(NULL != GetStr(str)printf("rn str =
13、%s",str);return;答案:無法返回字符串,參數(shù)使用錯誤。4). 請指出下面程序錯誤的地方: (4 分)#define BUFFER_SIZE 256void Test(void)。5。char *str = NULL;str = (char *)malloc(BUFFER_SIZE);if(NULL = str)return;strcpy(str, "hello");free(str);if(NULL != str)strcpy(str, "world");printf(str);return;答案:引用了已經(jīng)釋放的內(nèi)存。5). 請
14、指出下面程序的錯誤: (4 分)void GetMemory(char *ppcChar, int iLength)if(NULL = ppcChar)return;*ppcChar = (char *)malloc(iLength);return;void Test(void)char *szStr = NULL;GetMemory(&szStr, 100);if(NULL != szStr)strcpy(szStr, "hello");printf(szStr);return;答案:沒有釋放內(nèi)存。四、簡答題(每題 4 分,共 8 分)。6。1 )寫宏定義 MAX
15、,求出兩個數(shù)中的較大者。 (4分)答案: #defined MAX (A,B) ( (A)> =(B)?(A):(B) )2) 畫出同下面多叉樹等價的二叉樹,并作說明。 (4 分)答案如下:(采用樹的孩子兄弟法將樹轉(zhuǎn)換成二叉樹)A五、編程題(共 10 分)AB C D1) 給一個單鏈表,刪除某一節(jié)點(diǎn)(要求:先找到是否有這個節(jié)點(diǎn),然后再刪除,要能保證程序運(yùn)行正確) (10 分)BE F 參考解法如下:include<iostreamC.h>#include<malloc.h>#include<stdio.h> E#include<conio.h&g
16、t;Dtypedef struFct linkqueue1int data;struct linkqueue1 *next;linkqueue1,linklist;linklist *creat(void) / 建立鏈表linklist *head;int n=1,len;linklist *p1,*p2;cout<<"input number of records:"<<endl;cin>>len;head=p1=p2=(linklist *)malloc(sizeof(linklist);cout<<"input
17、 records:"<<endl;cin>>p1->data;head->next=NULL;while(n+<=len-1)p1=(linklist *)malloc(sizeof(linklist);cin>>p1->data;p2->next=p1;p2=p1;p2->next=NULL;return (head);。7。void outlink(linklist *head)linklist *p;p=head;while(p)cout<<p->data<<" &q
18、uot;p=p->next;int bianli(linklist *head, int Number) / 遍歷鏈表,返回 1 說明有要刪除的元素,反之。linklist *p;p=head;while(p->next!=NULL)if( p->data= Number)return 1 ;return 0;linklist *deletenode(linklist *head,int deleteNumber) linklist *Pointer, *Back;Back = head;Pointer = Back >next;while(Pointer->data!= deleteNumber)Pointer+;Back= Back->next;if(Pointer->data = deleteNumber)printf(" 刪除首節(jié)點(diǎn)! n");head = Pointer ->next;free( Pointer );break;elseBack->next = Pointer->next;free(Pointer);。8。break;return head;void main()linklist *head;int del,isexit;head=creat(); /
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025官地引水發(fā)電合同條件
- 2025住房公積金合同模板
- 碼頭工程施工組織設(shè)計(jì)
- 榜樣報告心得體會(10篇)
- 科技醫(yī)療下的新突破-尿檢血檢在慢性病管理中的應(yīng)用研究
- 課題申報參考:馬克思主義經(jīng)典作家文化理論研究
- 課題申報參考:考慮質(zhì)量信息披露的退役動力電池梯級利用與再生利用運(yùn)營決策研究
- 2024年硬質(zhì)合金噴焊粉項(xiàng)目資金需求報告
- 未來工控網(wǎng)絡(luò)的多元化發(fā)展趨勢及機(jī)遇挑戰(zhàn)
- 網(wǎng)絡(luò)安全在學(xué)校商業(yè)活動中的保障
- 2025-2030年中國陶瓷電容器行業(yè)運(yùn)營狀況與發(fā)展前景分析報告
- 2025年山西國際能源集團(tuán)限公司所屬企業(yè)招聘43人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 二零二五年倉儲配送中心物業(yè)管理與優(yōu)化升級合同3篇
- 2025屆廈門高三1月質(zhì)檢期末聯(lián)考數(shù)學(xué)答案
- 音樂作品錄制許可
- 江蘇省無錫市2023-2024學(xué)年高三上學(xué)期期終教學(xué)質(zhì)量調(diào)研測試語文試題(解析版)
- 拉薩市2025屆高三第一次聯(lián)考(一模)英語試卷(含答案解析)
- 開題報告:AIGC背景下大學(xué)英語教學(xué)設(shè)計(jì)重構(gòu)研究
- 師德標(biāo)兵先進(jìn)事跡材料師德標(biāo)兵個人主要事跡
- 連鎖商務(wù)酒店述職報告
- 2024年山東省煙臺市初中學(xué)業(yè)水平考試地理試卷含答案
評論
0/150
提交評論