C程序設計期末練習題答案_第1頁
C程序設計期末練習題答案_第2頁
C程序設計期末練習題答案_第3頁
C程序設計期末練習題答案_第4頁
C程序設計期末練習題答案_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

PAGEPAGE1一、選擇題:1、一個c程序的執(zhí)行是從()本程序的main函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束本程序文件的第一個函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束本程序的main函數(shù)開始,到main函數(shù)結(jié)束本程序文件的第一個函數(shù)開始,到本程序main函數(shù)結(jié)束2、以下程序的運行結(jié)果為()main(){inta=100,x=10,y=20,ok1=5,ok2=0;if(x<y)if(y!=10)if(!ok1)a=1;elseif(ok2)a=10;a=-1;printf(“%d\n”,a);}A、1B、0C、-13、已知字母A的ASCII碼為十進制數(shù)65,且c2為字符型,則執(zhí)行c2=‘A’+‘6’-‘3’;后,A、BB、66C、不確定的值D、1144、已知inta=12,語句a+=a—=a*=a;執(zhí)行后,a的值為()a=—100B、a=—120C、a=05、下面有關for循環(huán)的正確描述是()for循環(huán)只能用于循環(huán)次數(shù)已知的循環(huán)for循環(huán)是先執(zhí)行循環(huán)體語句,后判斷表達式在for循環(huán)中,不能用break語句跳出循環(huán)體for循環(huán)的循環(huán)體語句中,可以包含多條語句,且必須用花括號括起來6、以下程序段()x=-1;do{x=x*x;}while(!x);A、是死循環(huán)B、循環(huán)執(zhí)行兩次C、循環(huán)執(zhí)行一次D、有語法錯誤6、若有說明:inta[3][4];則對a數(shù)組元素的正確引用是()A、a[2][4]B、a[1,3]C、a[1+1][0]D、a(2)(1)7、判斷字符串a(chǎn)和b是否相等,應當使用()A、if(a==b)B、if(a=b)C、if(strcpy(a,b)D、if(strcmp(a,b)==1)8、若i為整型變量,則以下循環(huán)執(zhí)行次數(shù)為()for(i=2;i==0;)printf(“%d”,i--);A、無限次B、0次C、1次D、2次9、若用數(shù)組名作為函數(shù)調(diào)用的實參,傳遞給形參的是()數(shù)組第一個元素的值數(shù)組中全部元素的值數(shù)組元素的個數(shù)數(shù)組的首地址10、以下敘述中不正確的是()預處理命令行都必須以#號開始在程序中凡是以#號開始的語句行都是預處理命令行C程序在執(zhí)行過程中對預處理命令行進行處理預處理命令不占用程序的執(zhí)行時間11、以下程序的運行結(jié)果是()#defineMIN(x,y)(x)<(y)?(x):(y)main(){inti=10,j=15,k;k=10*MIN(i,j);printf(“%d\n”,k);}A、10B、15C12、以下有關宏替換的敘述不正確的是()宏替換不占用運行時間宏名無類型宏替換只是字符替換宏名必須用大寫字母表示13、若有以下宏定義:#defineN2#defineY(n)((N+1)*n)則執(zhí)行語句z=2*(N+Y(5));后的結(jié)果是()A、語句有錯誤B、z=34C14、已有定義intk=2;int*p1,*p2;且p1、p2均已指向變量k,下面不能正確執(zhí)行的賦值語句是()A、k=*p1+*p2B、p2=kC、p1=p2D、k=*p1*(*p2)15、若有以下定義,則對a數(shù)組元素的正確引用是()inta[5],*p=a;A、*&a[5]B、a+2C、*(p+5)D、*(a+2)17、若有函數(shù)max(a,b),并且已使函數(shù)指針變量p指向函數(shù)max,當調(diào)用該函數(shù)時,正確的調(diào)用方式是()A、(*p)max(a,b);B、*pmax(a,b)C、(*p)(a,b)D、*p(a,b)18、若有以下說明語句,則對pup中sex域的正確引用方式是()structpupil{charname[20];intsex;}pup,*p;p=&pup;A、p.pup.sexB、p->pup.sexC、(*p).pup.sexD、(*p).sex19、語句int(*ptr)();的含義是()ptr是指向一維數(shù)組的指針變量ptr是指向int型數(shù)據(jù)的指針變量ptr是指向函數(shù)的指針,該函數(shù)返回一個int型數(shù)據(jù)ptr是一個函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針20、若有以下說明語句:structstudent{intage;intnum;}std,*p;p=&std;則以下對結(jié)構(gòu)體變量std中成員age的引用方式不正確的是()A、std.ageB、p->ageC、(*p).ageD、*p.age二、寫出下列程序的運行結(jié)果或指明其完成的功能1、寫出下面程序的運行結(jié)果main(){intt=1605,h,m;h=(t/100)%12;if(h==0)h=12;printf(“%d:”,h);m=t%100;if(m<10)printf(“0”printf(“%d”,m);if(t<1200||t==2400)printf(“AM”);elseprintf(“PM”);}4:05PM2、寫出下面程序的運行結(jié)果main(){inta,b,c;ints,w,t;s=w=t=0;a=-1;b=3;c=3;if(c>0)s=a+b;if(a<=0){if(b>0)if(c<=0)w=a-b;}elseif(c>0)w=a-b;elset=c;printf(“%d%d%d”,s,w,t);}2003、寫出下面程序的運行結(jié)果main(){inti,j,x=0;for(i=0;i<2;i++){x++;for(j=0;j<=3;j++){if(j%2==0)continue;x++;}x++;}printf(“x=%d\n”,x);}x=84、寫出下面程序的運行結(jié)果inta=5;intb=7;main(){inta=4,b=5,c;c=plus(a,b);printf(“A+B=5%d\n”,c);}plus(intx,inty){intz;z=x+y;return(z);}A+B=95、寫出下面程序的運行結(jié)果main(){increment();increment();increment();}increment(){staticintx=0;x+=1;printf(“%d\n”,x);}1236、指明下面程序完成的功能intfac(intn){staticintf=1;f=f*n;return(f);}main(){intj;for(j=1;j<=5;j++)printf(“%d!=%d\n”,j,fac(j));}輸出1~5的階乘7、寫出下面程序的運行結(jié)果#include“stdio.h”main(){inta[10]={2,4,6,8,10,12,14,16,18,20},*p=a,i;for(i=0;i<2;i++){printf(“%d”,*p++);printf(“%d”,*++p);printf(“%d”,(*p)++);printf(“\n”);}}26671010三、完善程序1、下面程序的功能是打印100以內(nèi)個位數(shù)為6且能被3整除的所有數(shù)。請完善程序。main(){inti,j;for(i=0;_______;i++){j=i*10+6;if(______)continue;printf(“%d”,j);}}i<=9j%3!=02、下面程序的功能是檢查一個二維數(shù)組是否對稱(即對所有的i和j都有a[i][j]=a[j][i]),請完善程序。main(){inta[4][4]={1,2,3,4,2,2,5,6,3,5,3,7,4,6,7,4};inti,j,found=0;for(j=0;j<4;j++)for(_____;i<4;i++)if(a[j][i]!=a[i][j]{_________;break;}if(found==1)printf(No”);elseprintf(“Yes”);}i=j+1Found=13、下面程序的功能是在任意字符串a(chǎn)中將與字符c相等的所有元素的下標值分別存放到整型數(shù)組b中。請完善程序。main(){chara[80];intj,b[80],k=0;gets(a);for(j=0;a[j]!=’\0’if(________){b[k]=j;______;}for(j=0;j<k;j++)printf(“%d”,b[j]);}a[j]==’c’k++4、下面程序的功能是將兩個字符串s1和s2連接起來。請完善程序。main(){chars1[80],s2[80];gets(s1);gets(s2);conj(s1,s2);puts(s1);}conj(char*p1,char*p2){char*p=p1;while(*p1!=’\0’while(*p2!=’\0’_______;return(p);}p1++*p2*p1=’\05、下面程序的功能是計算1-3+5-7+……-99+101的值,請完善程序。main(){inti,t=1,s=0;for(i=1;i<101;i+=2){________;s=s+t;_______;}printf(“%d\n”,s);}t=t*it=-t/i6、下面程序的功能是將字符串中的數(shù)字字

溫馨提示

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

評論

0/150

提交評論