《C語言基礎(chǔ)》習(xí)題及答案

上傳人:文*** 文檔編號(hào):33445640 上傳時(shí)間:2021-10-17 格式:DOC 頁數(shù):6 大小:34.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
《C語言基礎(chǔ)》習(xí)題及答案_第1頁
第1頁 / 共6頁
《C語言基礎(chǔ)》習(xí)題及答案_第2頁
第2頁 / 共6頁
《C語言基礎(chǔ)》習(xí)題及答案_第3頁
第3頁 / 共6頁

下載文檔到電腦,查找使用更方便

8 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《C語言基礎(chǔ)》習(xí)題及答案》由會(huì)員分享,可在線閱讀,更多相關(guān)《《C語言基礎(chǔ)》習(xí)題及答案(6頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、真誠為您提供優(yōu)質(zhì)參考資料,若有不當(dāng)之處,請(qǐng)指正。 《C語言基礎(chǔ)》習(xí)題及答案 一、選擇題 1.設(shè)a的值為15,n的值為5,則進(jìn)行a%=(n%=2)運(yùn)算后,a的值為( A )。 A.0 B.1 C.12 D.6 2.設(shè)有類型說明 unsigned int a=65535; , 按%d格式輸出a的值,其結(jié)果是( B )。 A.65536 B.-1 C.1 D.-32767 3.下列運(yùn)算符中優(yōu)先級(jí)最高的是( C )。 A.?: B.&& C.+ D.!= 4. 以下程序輸出的結(jié)果是

2、( A )。 main( ) { int a= -1,b=4,k; k=!((++a<0)&&! (b--<0)); printf("%d%d%d\n",k,a,b); } A.104 B.103 C.013 D.004 5.下面的程序執(zhí)行后,變量a的值是( B )。 #define SQR(x) x*x main() { int a=10,k=2,m=1; a/=SQR(k+m)/SQR(k+m); printf("%d\n",a); } A.10 B.1

3、 C.9 D.0 6.設(shè)有int i;則表達(dá)式i=1,++i,++i||++i,i的值為 ( C)。 A.1 B.2 C.3 D.4 7.設(shè)有int i;則表達(dá)式(i=1,i=10)?i++||++i:++i的值為 ( A )。 A.1 B.2 C.3 D.10 8.設(shè)有int a[]={10,11,12},*p=&a[0];則執(zhí)行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是 ( C )。 A.10,11,12 B.11,12,12 C.10,12,12 D.11,11,1

4、2 9.設(shè)有int i, j, k; 則表達(dá)式i=1,j=2,k=3, i&&j&&k 的值為 ( A )。 A.1 B.2 C.3 D.0 10.設(shè)有說明int s[2]={0,1},*p=s; 則下列錯(cuò)誤的C語句是 ( A )。 A.s+=1; B.p+=1; C.*p++; D.(*P)++; 11.以下敘述正確的是( D )。 A.可以把define和if定義為用戶標(biāo)識(shí)符 B.可以把if定義為用戶標(biāo)識(shí)符,但不能把define定義為用戶標(biāo)識(shí)符 C.define和if都不能定義為用戶標(biāo)識(shí)符 D.可以把define定義為用戶標(biāo)識(shí)符,但不能把if

5、定義為用戶標(biāo)識(shí)符 12. 以下程序的輸出結(jié)果是( B )。 void prtv(int *x) { printf("%d\n",++*x); } main() { int a=25; prtv(&a); } A.25 B.26 C.27 D.以上均不對(duì) 13. 設(shè)有以下說明語句 struct ex { int x; float y;char z; } example; 則下面的敘述中不正確的是( D )。 A.struct ex是結(jié)

6、構(gòu)體類型 B.x,y,z都是結(jié)構(gòu)體成員名 C.struct是結(jié)構(gòu)體類型的關(guān)鍵字 D.example是結(jié)構(gòu)體類型名 14. 下列敘述中正確的是( D )。 A.C語言的函數(shù)可以嵌套定義 B.C語言的子程序有過程和函數(shù)兩種 C.C語言編譯時(shí)不檢查語法 D.C語言中,根據(jù)函數(shù)能否被其它源文件調(diào)用,被區(qū)分為內(nèi)部函數(shù)和外部函數(shù) 15. 若有說明:int i,j=7,*p=&i;則與i=j;等價(jià)的語句是( D )。 A.i=*p; B.i=**p; C.i=&j; D.*p=*&j; 16. 以下程序的輸出結(jié)果是( A )。 main() { char st[2

7、0]="hello\0\t\\"; printf("%d%d\n",strlen(st),sizeof(st)); } A.520 B.99 C.1320 D.2020 17. 不合法的main函數(shù)命令行參數(shù)表示形式是( C )。 A.main(int argv,char *arge[]) B.main(int arc,char **arv) C.main(int argc,char *argv) D.main(int a,char *c[]) 18. 若有說明語句:int a,b,c,*d=&c;則能正確從鍵盤讀入三個(gè)整數(shù)分別

8、賦給變量a、b、c的語句是( C )。 A.scanf("%d%d%d",a,b,d); B.scanf("%d%d%d",&a,&b,&d) C.scanf("%d%d%d",&a,&b,d); D.scanf("%d%d%d",a,b,*d); 19. 以下程序段的輸出結(jié)果是( A )。 char s[]="\\141\141abc\t"; printf("%d\n",strlen(s)); A.9 B.10 C.12 D.14 20. 以下程序的輸出結(jié)果是( D )。 main() { int x=10,y=10,i; for(i=0;

9、x>8 ;y=++i) printf("%d %d ",x--,y); } A.10 1 9 2 B.10 9 9 0 C.9 8 7 6 D.10 10 9 1 21. 設(shè)a和b均為double型變量,且a=5.5、b=2.5,則表達(dá)式(int)a+b/b的值是( D )。 A.6 B.6.500000 C.5.500000 D.6.000000 22. 以下定義語句中正確的是( A )。 A. int a=10,*b=&a; B. float a=b=10.0; C. char a=Ab=B; D. fl

10、oat *a,b=&a; 23. 有以下程序 main() {char str[][10]={"China","Beijing"},*p=str; printf("%s\n",p+10); } 程序運(yùn)行后的輸出結(jié)果是( B )。 A. ing B. Bejing C. ng D. China 24. 下列關(guān)于單目運(yùn)算符++、--的敘述中正確的是( A )。 A.它們的運(yùn)算對(duì)象可以是char型變量、int型變量和float型變量 B.它們的運(yùn)算對(duì)象可以是char型變量和int型變量,但不能是float型變量 C.它們的運(yùn)算對(duì)象可以是int型變量,但不能是d

11、ouble型變量和float型變量 D.它們的運(yùn)算對(duì)象可以是任何變量和常量 25. 設(shè)a=5、b=6、c=7、d=8、m=2、n=2,執(zhí)行 (m=a>b)&&(n=c>d) 后n的值為( B )。 A.4 B.2 C.3 D.1 二、填空題 1.C語言中靜態(tài)變量和外部變量的初始化是在___編譯___階段完成的。 2.設(shè)a為整型變量,初值為12,執(zhí)行賦值表達(dá)式a+=a-=a*a后,a的值是___-264_____。 3.設(shè)a和x都為整型變量,執(zhí)行賦值表達(dá)式x=(a=3,6*3)后,x值為____18____。 4.設(shè)整型變量a 的值為-1,在1

12、6位微機(jī)中用16進(jìn)制打印a的值是___ffff_____。 5.在內(nèi)存中供用戶使用的存儲(chǔ)空間可分為三個(gè)區(qū):存儲(chǔ)程序的程序區(qū),存儲(chǔ)數(shù)據(jù)的靜態(tài)存儲(chǔ)區(qū)和動(dòng)態(tài)存儲(chǔ)區(qū)。在靜態(tài)存儲(chǔ)區(qū)中存放的數(shù)據(jù)是___全局變量和___局部靜態(tài)____變量。 6.C語言提供的預(yù)處理功能主要有三種:宏定義,文件包含和條件編譯。 條件編譯命令有三種基本形式: ① #ifdef 標(biāo)識(shí)符 ② #__ifndef__標(biāo)識(shí)符 ③ #___if ___表達(dá)式 程序段1 程序段1 程序段1

13、 #else #else #else 程序段2 程序段2 程序段2 #endif #endif #endif 7.類型定義:int a[10],*p; 執(zhí)行賦值語句p=a;之后,那么p+5是___ a[5]的XXX_____,*(p+5)是___ a[5]_____。 (第1空答&a[

14、5]或a+5也不算錯(cuò)),第2空答a[5]的值也可) 三、判斷題 1、若有說明int c;則while(c=getchar());是正確的C語句。 ( T ) 2、int i,*p=&i;是正確的C說明語句。 ( T ) 3、7&&3+12的值是15。 ( F ) 4、while 1 i,j; 一定是錯(cuò)誤的C說明。 ( T ) 5、for( ; ; )S中的語句S必執(zhí)行無窮多次。 ( F ) 6、unsigned 和void 在C中都是保留的。 ( T ) 7、int If=’\0’;會(huì)出現(xiàn)編譯錯(cuò)誤。 ( F ) 8、char str[10][]; 是錯(cuò)誤的說明語句。 ( T

15、 ) 9、構(gòu)成C程序的基本單位是函數(shù)。 ( T ) 10、所有被調(diào)用的函數(shù)一定要在調(diào)用之前進(jìn)行定義。 ( F ) 11、語句int *p; *p=0;存在著潛在的危險(xiǎn)。( T ) 12、語句int *p; p=0;是錯(cuò)誤的。( F ) 13、int *p[3];定義了一個(gè)指針數(shù)組p,該數(shù)組含有三個(gè)元素,每個(gè)元素都是基類型為int的指針。( T ) 14、print可以作為變量名使用。( T ) 15、if (a=0) i=1; 是合法的C語句。( T ) 四、閱讀程序題(寫出程序的運(yùn)行結(jié)果) 1.【程序】 swap1(int x,int y) { int w;

16、w=x; x=y; y=w;} swap2(int *p1,int *p2) { int *p; p=p1; p1=p2; p2=p;} swap3(int *pa, int *pb) { int p; p=*pa; *pa=*pb; *pb=p;} main() { int a,b; int *ptr1,*ptr2; a=5; b=7; ptr1=&a; ptr2=&b; swap1(*ptr1,*ptr2); printf("data1=%d\tdata2=%d\n",*ptr1,*ptr2); swap2(ptr1,ptr2);

17、 printf("data3=%d\tdata4=%d\n",*ptr1,*ptr2); printf("data5=%d\tdata6=%d\n",a,b); swap3(ptr1,ptr2); printf("data7=%d\tdata8=%d\n",*ptr1,*ptr2); printf("data9=%d\tdata10=%d\n",a,b); } 【運(yùn)行結(jié)果】 data1=5 data2=7 data3=5 data4=7 data5=5 data6=7 data7=7 data8=5 data9=7 data10=

18、5 2.【程序】 int a[][3]={1,2,3,4,5,6}; main() { int i,j,(*p)[3]; p=a; printf("%d %d %d\n",p[0][0],*(p[0]+1),(*p)[2]); printf("%d %d %d\n",p[1][0],*(p[1]+1),(*(p+1))[2]); for (i=0; i<2; i++) for (j=0; j<3; j++) printf("%d ",*(*(p+i)+j)); printf("\n"); } 【運(yùn)行結(jié)果】 1 2 3 4

19、 5 6 1 2 3 4 5 6 3.【程序】 main() { int i,n=0; for( i=2;i<5;i++) {do { if(i%3) continue; n++; }while(!i); n++; } printf("n=%d\n",n); } 【運(yùn)行結(jié)果】 n=4 4.以下程序運(yùn)行后的輸出結(jié)果是______。 【程序】 main () { char a[]="Language",b[]="Programe"; char *p1,*p2; int k;

20、 p1=a; p2=b; for(k=0;k<=7;k++) if(*(p1+k)==*(p2+k)) printf("%c",*(p1+k)); } 【運(yùn)行結(jié)果】 gae 5. 【程序】 #include void main() { int i,j,k,a=5,m[6][6]; i=1; k=(a+1)/2; for (j=1;j<=a*a;j++) { m[i][k]=j; if (j%a==0) {i=(i%a)+1;continue;} k=(k%a)+1; i--; if (i==0) i=a; } for (i=1;i<=a;i++) { for (j=1;j<=a;j++) printf("%4d",m[i][j]); printf("\n"); } } 【運(yùn)行結(jié)果】 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 6 / 6

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!