C語言第3版 選擇題(第7、8、9章)
《C語言第3版 選擇題(第7、8、9章)》由會員分享,可在線閱讀,更多相關(guān)《C語言第3版 選擇題(第7、8、9章)(8頁珍藏版)》請在裝配圖網(wǎng)上搜索。
.習(xí)題七一、選擇題1下列敘述中錯誤的是 C 。A) 預(yù)處理命令必須以#號開頭B) 預(yù)處理命令可以寫成多行C) 預(yù)處理命令必須置于源文件的開始處D) 預(yù)處理命令以回車結(jié)束2C語言編譯系統(tǒng)對宏替換的處理是在 A 進行的。A) 源程序編譯前B) 源程序編譯時C) 程序連接時D) 程序運行時3在宏定義 #define PI 3.14159 中,3.14159是 C 。 A) 單精度數(shù)B) 雙精度數(shù)C) 字符串D) 由PI位置確定其類型4設(shè)有宏定義 #define A B abcd ,則宏替換時, A 。A) 宏名A用 B abcd 替換B) 宏名A B用abcd 替換C) 宏名A 和宏名B都用abcd 替換D) 語法錯誤,無法替換5下列有關(guān)宏的敘述中錯誤的是 A 。A) 宏名必須使用大寫英文字母B) 宏替換不占用程序的運行時間C) 宏參數(shù)沒有數(shù)據(jù)類型D) 宏名沒有數(shù)據(jù)類型6下列宏定義,最不會引起二義性的是 D 。A) #define ADD(a,b) a+bB) #define ADD(a,b) (a)+(b)C) #define ADD(a,b) (a+b)D) #define ADD(a,b) (a)+(b)7設(shè)有宏定義 #define M 3+2 則表達式 2 * M * 3 的值為 B 。A) 30B) 12C) 10D) 138設(shè)有宏定義 #define Y(n) (4*n) 則表達式 3+Y(5+1)的值為 B 。A) 21B) 24C) 27D) 309設(shè)有宏定義: #define N 3 #define M N+2 則表達式 2*M/N的值為 A 。A) 6B) 3C) 3.333D) 錯誤替換為 2*3 + 2 /3,其中, 2/3是整除,值為110在#include命令中,#include后面的文件名用雙引號定界,則系統(tǒng)尋找被包含文件的方式是 D 。A) 在C系統(tǒng)的include文件夾查找B) 在源程序所在文件夾查找C) 先在C系統(tǒng)的include文件夾查找,查找失敗后再到源程序所在文件夾查找D) 先在源程序所在文件夾查找,查找失敗后再到C系統(tǒng)的include文件夾查找11(不要求)設(shè)有以下A、B兩個程序段,則說法正確的是 B 。/A程序段/B程序段#define N 3#define N 3void main()void main()if(N0) #if(N0)printf(N=%dn,N);printf(N=%dn,N);else#elseprintf(N=0);printf(N=0);#endifA) 兩個程序目標(biāo)代碼相同,運行結(jié)果也相同B) 兩個程序目標(biāo)代碼不同,但運行結(jié)果相同C) 兩個程序目標(biāo)代碼相同,但運行結(jié)果不同D) 兩個程序目標(biāo)代碼不同,運行結(jié)果也不同12(不要求)執(zhí)行以下程序,結(jié)果為 A 。#define DEBUGvoid main()#ifdef DEBUGprintf(DEBUG );#endifprintf(OK);A) DEBUG OKB) OK C) 宏定義錯誤D) #ifdef命令錯誤 第八章一、選擇題1以下數(shù)組定義中,錯誤的是C。A) int a=1,2,3;B) int a5=1,2,3;C) int a3=1,2,3,4;D) int a5,b;2以下數(shù)組定義中,正確的是B。A) int n=4 , an=1,2,3,4;B) int a2=1,2,3,4;C) int a2=1,2,3,4;D) int a=1,2,3,4;3設(shè)有如下定義:int a810;在VC中一個整數(shù)占用4字節(jié),設(shè)a的起始地址為1000,則a11的地址是D。A) 1000B) 1004C) 1036D) 10444已知有數(shù)組定義:int a 3=1,2,3,4,5,6,7,8,9,則a12的值是C。A) 2B) 5C) 6D) 85在以下字符串定義、初始化和賦值運算中,錯誤的是A。A) char str10; str= String;B) char str10= String;C) char str10= S ,t, r ,i,n, g;D) char str= S ,t, r ,i,n, g,0;6設(shè)有以下字符串定義,則s1和s2 D。char s1= S ,t, r ,i,n, g;char s2= String;A) 長度相同,內(nèi)容也相同 B) 長度不同,但內(nèi)容相同C) 長度不同,但內(nèi)容相同D) 長度不同,內(nèi)容也不同7設(shè)有定義 int a10=0; 則說法正確的是 A。A) 數(shù)組a有10個元素,各元素的值為0B) 數(shù)組a有10個元素,其中a0的值為0,其他元素的值不確定C) 數(shù)組a有1個元素,其值為0D) 數(shù)組初始化錯誤,初值個數(shù)少于數(shù)組元素個數(shù)8設(shè)已定義 char str6= a,b,0,c,d,0; 執(zhí)行語句 printf(%s,str) 后,輸出結(jié)果為B。A) aB) abC) abcdD) ab0cd09引用數(shù)組元素時,數(shù)組元素下標(biāo)不可以是C。A) 字符常量B) 整型變量C) 字符串D) 算術(shù)表達式10已定義字符數(shù)組s1和s2,以下錯誤的輸入語句是C。A) scanf(%s%s , s1 , s2) ;B) scanf(%s%s , &s1 , &s2);C) gets(s1,s2) ;D) gets(s1) ;gets(s2) ;習(xí)題九一、選擇題1. 若已經(jīng)定義 struct stu int a, b; student ; ,則下列輸入語句中正確的是D。A) scanf(%d, &a);B) scanf(%d, &student);C) scanf(%d, &stu.a);D) scanf(%d, &student.a);2. 若已有以下結(jié)構(gòu)體定義和初始化,則值為2的表達式是A。 struct cmplxint x ; int y; c=1,2,3,4;A) c0.yB) yC) c.y0D) c.y13. 設(shè)有如下程序段,則vu.a 的值為D。union u int a;int b;float c; vu;vu.a=1;vu.b=2;vu.c=3;A) 1B) 2C) 3D) A、B、C都不是4. 設(shè)已經(jīng)定義union u char a;int b; vu; 在VC中存儲char 型數(shù)據(jù)需要1個字節(jié),存儲int型數(shù)據(jù)需要4個字節(jié),則存儲變量vu需要B個字節(jié)。A) 1B) 4C) 5D) 85. 設(shè)已經(jīng)定義union u int a; int b; vu=1,2; 則D。A) 共用體成員a和b的值都是1B) 共用體成員a和b的值都是2C) 共用體成員a的值是1,b的值都是2D) 該定義錯誤6. 設(shè)有定義 enum date year,month,day d ;則下列敘述中正確的是A。A) date是類型、d是變量、year是常量B) date是類型、d和year是變量C) date和d是類型、year是常量D) date和d是變量、year是常量7. 設(shè)有定義 enum date year,month,day d ;則正確的表達式是B。A) year=1B) d=yearC) d=yearD) date=year8. 若已經(jīng)定義 typedef struct stu int a, b; student ; ,則下列敘述中正確的是C。A) stu 是結(jié)構(gòu)體變量B) student 是結(jié)構(gòu)體變量 C) student 是結(jié)構(gòu)體類型D) a和b是結(jié)構(gòu)型體變量9. 下面有關(guān)typedef語句的敘述中,正確的是C。A) typedef語句用于定義新類型B) typedef語句用于定義新變量C) typedef語句用于給已定義類型取別名D) typedef語句用于給已定義變量取別名習(xí)題十一、選擇題1. 設(shè)已定義 int a, *p; 下列賦值表達式中正確的是C。A) *p=aB) p=*aC) p=&aD) *p=&a2. 設(shè)已定義 int x, *p=&x ; 則下列表達式中錯誤的是B。 A) *&xB) &*xC) * & pD) & * p3. 若已定義 int a=1,*b=&a; , 則printf(%dn,*b);的輸出結(jié)果為A。A) a的值B) a的地址C) b的值D) b的地址4. 設(shè)已定義 int x, *p ,*p1=&x , *p2=&x ; 則下列表達式中錯誤的是C。 A) x=*p1+*p2B) p=p1C) p =p1+p2 D) x=p1-p25. 設(shè)有函數(shù)定義 void p(int *x)printf(%dn,*x) ; 和變量定義a=3; 則正確的函數(shù)調(diào)用是C。A) p(a)B) p(*a)C) p(&a) D) p(int *a)6. 函數(shù) int fun( char *x)char *y=x; while(*y)y+; return(y-x); 的功能是A。A) 求字符串的長度B) 比較兩個字符串的大小C) 將字符串x復(fù)制到字符串y D) 將字符串x連接到字符串y后面7. 運行以下程序,輸出結(jié)果為B。int fun(int a,int *b)a+; (*b)+;return a+*b;void main()int x=1,y=2;printf(%d ,fun(x,&y);printf(%d ,fun(x,&y);A) 5 5B) 5 6C)6 5 D) 6 68. 運行以下程序,輸出結(jié)果為C。#include int* fun(int a,int *b)a+; (*b)+;*b=a+*b;return b;void main()int x=1,y=2,*z;z=fun(x,&y);printf(%d ,*z);z=fun(x,&y);printf(%d ,*z);A) 5 6B) 5 7C)5 8 D) 6 89. 若已定義 int a=1,2,3,4,*p=a; 則下面表達式中值不等于2的是C。A) *(a+1)B) *(p+1)C) *(+a)D) *(+p)10. 若已定義 int a=1,2,3,4,*p=a+1; 則p2的值是C。A) 2B) 3C) 4D) 無意義11. (不要求)設(shè)已定義 int x410, *p=x0 ; 則下列表達式中的值為整型的是B。A) &x12B) *(p+1)C) x1D)p+112. 設(shè)已定義 char s = ABCD; printf(%s,s+1)的值為C。A) ABCD1B) BC) BCDD) ABCD13. 設(shè)已定義 char str=abcd , *ptr=str;,則 *(ptr+5)的值為B。A) dB) 0C) 0D) 字符d的地址14. 下面對字符串變量的初始化或賦值操作中,錯誤的是C。A) char a=OK;B) char *a=OK;C) char a10; a=OK;D) char *a; a=OK;15. (不要求)設(shè)已定義 char *ps2= abc,1234; 則以下敘述中錯誤的是A。A) ps為指針變量,它指向一個長度為2的字符串?dāng)?shù)組B) ps為指針數(shù)組,其兩個元素分別存儲字符串a(chǎn)bc和1234的地址C) ps12的值為3D) *(ps0+1) 的值為b16.設(shè)已定義 struct int a,b; s,*ps=&s; 則錯誤的結(jié)構(gòu)體成員引用是C。A) s.aB) ps-aC)*ps.aD) (*ps).a17. (不要求)設(shè)已有以下定義,則表達式的值為2的是A。(運算符-優(yōu)先級高于+)struct stint data;st *link; a3=1,a+1,3,a+2,5,0,*p=a;A) k=+p-dataB) k=p+-dataC) k=p-data+D) k=(+p)-data.- 1.請仔細閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
10 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- C語言第3版 選擇題第7、8、9章 語言 選擇題
鏈接地址:http://www.szxfmmzy.com/p-12828399.html