![c語(yǔ)言課件 c3學(xué)習(xí)資料_第1頁(yè)](http://file4.renrendoc.com/view15/M01/1B/21/wKhkGWemnhOAHcqEAAFal_7I8dc481.jpg)
![c語(yǔ)言課件 c3學(xué)習(xí)資料_第2頁(yè)](http://file4.renrendoc.com/view15/M01/1B/21/wKhkGWemnhOAHcqEAAFal_7I8dc4812.jpg)
![c語(yǔ)言課件 c3學(xué)習(xí)資料_第3頁(yè)](http://file4.renrendoc.com/view15/M01/1B/21/wKhkGWemnhOAHcqEAAFal_7I8dc4813.jpg)
![c語(yǔ)言課件 c3學(xué)習(xí)資料_第4頁(yè)](http://file4.renrendoc.com/view15/M01/1B/21/wKhkGWemnhOAHcqEAAFal_7I8dc4814.jpg)
![c語(yǔ)言課件 c3學(xué)習(xí)資料_第5頁(yè)](http://file4.renrendoc.com/view15/M01/1B/21/wKhkGWemnhOAHcqEAAFal_7I8dc4815.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
一、單項(xiàng)選擇題(共20小題;每小題1分,共20分)一、單項(xiàng)選擇題(共20小題;每小題1分,共20分)1、下列常量不合法的是()。A.1.5E-2B.‘BASIC’C.0x12D.“\\good”2、下列變量名中不合法的是()。A.iCountB.Stu_NOC.INTD.vc++3、設(shè)變量已正確定義并賦值,以下正確的表達(dá)式是()。A.b=7++B.x=3,++yC.a(chǎn)=7%3.0D.x=y+1=24、表達(dá)式sizeof(double)-sizeof(3.1f)+3/2的值是()。A.4B.5C.5.5D.1.55、下列各語(yǔ)句序列判別變量a、b的大小,若a<b則交換它們的值,其中正確的是()。A.if(a<b){t=a;a=b;b=t;}
B.if(a<b)a=b;b=a;
C.if(a<b){a=b;b=a;}
D.if(a<b)t=a;a=b;b=t;6、已知有程序段:inta=1,*p=&a,**q; q=&p; **q=3; printf("%d\n",a);則該程序段正確執(zhí)行后輸出結(jié)果為()。A.1B.3C.該程序段有語(yǔ)法錯(cuò)D.該程序段沒(méi)有輸出結(jié)果7、若有說(shuō)明:int*p,m=3,n;,則以下正確的程序段是()。A.p=&n;scanf("%d",&p);B.p=&&n;scanf("%d",*p);C.scanf("%d",&n);*p=n;D.p=&n;*p=m;8、設(shè)有以下說(shuō)明語(yǔ)句,則下面的敘述中不正確的是()。typedefstructstudent{longStuNO;charStuname[9];charsex;floatcscore;}STU;
A.typedef是給類(lèi)型起別名
B.STU是結(jié)構(gòu)變量名
C.StuNO是結(jié)構(gòu)體STU的一個(gè)成員D.STU是結(jié)構(gòu)類(lèi)型名9、有定義或聲明:int*myf(floatx,longy);,若以下選項(xiàng)中的正確的是()。A.myf是指針數(shù)組;B.myf是數(shù)組指針;C.myf是指針函數(shù);D.myf是函數(shù)指針;10、C語(yǔ)言中函數(shù)返回值的類(lèi)型是由()決定的。A.傳遞給函數(shù)的實(shí)參類(lèi)型B.return語(yǔ)句中的表達(dá)式類(lèi)型C.調(diào)用該函數(shù)的主調(diào)函數(shù)類(lèi)型D.定義函數(shù)時(shí)所指定的函數(shù)返回值類(lèi)型11、若有宏定義:#defineFUN(x)x%x,則表達(dá)式FUN(2+3)的值為()。A.5B.0C.6D.712、設(shè)有定義語(yǔ)句:charc1=32,c2=32;則以下表達(dá)式中值為0的是()。A.c1^c2
B.c1&c2
C.~c2 D.c1|c213、若有以下定義語(yǔ)句:intm[]={5,4,3,2,1},i=4;,則下面對(duì)m數(shù)組元素的引用中錯(cuò)誤的是()。A.m[i]B.m[2*2]C.m[m[0]]D.m[m[i]]14、以下對(duì)二維數(shù)組arr的定義正確的是()。A.intarr[5][]={1,2,3};B.intarr[][1]={{1,2,3},{4,5,6}};C.intarr[3][3]={0};D.intarr[2][3]={1,2,3,4,5,6,7,8};15、若有定義語(yǔ)句:chars[]="hello\0theworld";,則strlen(s)的值是()。A.5B.6C.14D.1516、有定義inti=88,j=99,*p,*q;p=&i;q=&j;p=q;則printf("%d%d",*p,*q)結(jié)果是()。A.8888B.8899C.9999D.998817、已知有定義inta[8]={0},*p=a;,則不能表示a[1]元素的值的是()。A.*(p+1)B.*(++a)C.p[1]D.*&a[1]18、有定義如下:structtest{inta;intb[2];}s[3]={{111,1,2},{222,3,4},{333,5,6}};則s[1].b[0]的值是()。A.3B.4C.5D.619、若要以寫(xiě)的方式創(chuàng)建新的文本文件,則在fopen函數(shù)中使用的打開(kāi)方式是()。A."w" B."rb"C."rb+" D."a+b"20、若有定義:inta[5][2]={7,6,5,4,3,2,1},*p=a[1];則*(++p)的值是()。A.2B.3C.4D.5二、閱讀程序題,寫(xiě)出下列程序的運(yùn)行結(jié)果。(本題10小題,每小題3分,共30分)1、main(){ FILE*fp;inti,buf[]={8,7,6,5,4,3,2,1}; fp=fopen("mytest.dat","wb+"); fwrite(buf,sizeof(int),8,fp); fseek(fp,sizeof(int)*4,SEEK_SET); fread(buf,sizeof(int),4,fp);fclose(fp); for(i=0;i<8;i++)printf("%d",buf[i]);}輸出結(jié)果為:______________________________。2、main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;}printf("a=%d,b=%d\n",a,b);}輸出結(jié)果為:______________________________。3、#include<string.h>main(){charp[20]={'a','b','c','d'},q[]="abc",r[]="abcde";strcpy(p+strlen(q),r);strcat(p,q);printf("%d%d\n",sizeof(p),strlen(p));}輸出結(jié)果為:______________________________。4、以下程序設(shè)從鍵盤(pán)輸入ABC后按<Enter>鍵。voidf(){ charch=getchar(); printf("%c",ch);if(ch!='\n') f();printf("%c",ch);}voidmain(){f();}輸出結(jié)果為:______________________________。5、main(){char*q[4]={"NANJING","BEIJING","HANGZHOU","SHANGHAI"};char**p=q;for(inti=0;i<4;i++,p++)printf("%c",*(*p+3)+1);}輸出結(jié)果為:______________________________。6、intn;voidf(intn){staticinta=3;n+=2;a++;printf("%d%d",n,a);}main(){f(n);f(n=5);printf("%d",n);}輸出結(jié)果為:______________________________。7、main(){intx,y,z; x=y=z=0; ++x||++y&&++z; printf("%d%d%d\n",x,y,z);}輸出結(jié)果為:______________________________。8、voidf(int*q){inti;for(i=0;i<5;i++)--(*q);}main(){inta[5]={6,6,6,6,6},i;f(a+2); for(i=0;i<5;i++)printf("%d",a[i]);} 輸出結(jié)果為:______________________________。9、main(){charstr[3][7]={"1234","5678"},*myp[2];inti,j,s=0; for(i=0;i<2;i++)myp[i]=str[i]; for(i=0;i<2;i++) for(j=1;myp[i][j]!=’\0’;j+=2) s=10*s+myp[i][j]-'0'; printf("%d\n",s);}輸出結(jié)果為:______________________________。10、structNODE{intnum;structNODE*next;};main(){structNODEa[3]={{0,a+1},{0,a+2},{0,a}},*p=&a[0],*q=&a[1],*r=&a[2];p->num=77;q->num=88;r->num=99;p->next=q;q->next=r;r->next=NULL;printf("%d\n",p->next->next->num);}輸出結(jié)果為:______________________________。三、程序填空題(共7小題,每空2分,共20分)1、下面程序的功能是判斷short型能表示的最大值。請(qǐng)?zhí)羁铡ain(){ shortn=0,m; while(1) { m=n; n++; if(n<0) _______________; } printf("%d\n",m);}2、建立一個(gè)鏈表,將存儲(chǔ)在字符數(shù)組中的字符依次轉(zhuǎn)儲(chǔ)到鏈表的各個(gè)結(jié)點(diǎn)中。#include<stdlib.h>typedefstructnode{chardata;structnode*next;}NODE;NODE*CreatList(chars[]){NODE*head,*p,*last=NULL;while(*s!='\0'){p=______________________________;p->data=*s++; p->next=NULL; if(last!=NULL) last->next=p; elsehead=p; last=p;}return_______________;}main(){chars[]="Hello2012!";NODE*head;head=CreatList(s);}3、以下程序的功能是:輸入兩個(gè)整數(shù),求出它們的最大公約數(shù)并輸出,請(qǐng)?zhí)羁铡ntgcd(inta,intb){ intk; k=_______________; while(k!=0) {a=b;b=k;k=a%b; } _______________;}main(){ inta,b; scanf("%d%d",&a,&b); printf("%d",gcd(a,b));}4、將一個(gè)字符串中的小寫(xiě)字母變?yōu)榇髮?xiě)字母,其他字符不變。main(){chars[]="Hello,2012!",*q;q=s;while(*q) {if(*q>='a'&&*q<='z')_______________;q++; }printf("%s\n",s);}5、將有N個(gè)元素的數(shù)組a中的數(shù)據(jù)逐個(gè)前移,第一個(gè)元素移到最后面。如有數(shù)組:12345678移動(dòng)后的結(jié)果為:23456781。#defineN8main(){inta[N]={1,2,3,4,5,6,7,8},i,t;t=_______________;for(i=0;i<N-1;i++) _______________; a[N-1]=t;for(i=0;i<N;i++) printf("%d",a[i]);}6.下面程序打出如下圖案:****************main(){inti,j;for(i=1;i<=4;i++){for(j=1;j<40-i;j++) printf(""); for(j=1;j<=2*i-1;j++)_______________;printf("\n");}} 7.以下程序中函數(shù)fun的功能是:統(tǒng)計(jì)結(jié)構(gòu)體數(shù)組中所有成績(jī)不及格的女同學(xué)(sex為’F’)的個(gè)數(shù),存入變量n中,并做為函數(shù)值返回。#defineN5typedefstructstduent{intno;charnam[9];charsex;floatscore;}STU;intfun(STUs[]){inti,n=0;for(i=0;i<N;i++)if(______________________________)n++;returnn;}main(){STUa[N]={{1,"Kate",'F',88},{2,"Bob",'M',66},{3,"Tom",'M',77},{4,"Betty",'F',51},{5,"Sarah",'F',57}};intn;n=fun(a);printf("n=%d\n",n);}四、編程題(共3小題,每小題10分,共30分)1、統(tǒng)計(jì)一個(gè)字符串中大寫(xiě)字母、小寫(xiě)字母、數(shù)字字符和其他字符的個(gè)數(shù)。2、從鍵盤(pán)輸入10個(gè)整數(shù)建立一個(gè)數(shù)組,請(qǐng)將該數(shù)組的最大值和位置打印出來(lái),尋找最大值和位置的工作必須在子函數(shù)內(nèi)完成,由主函數(shù)調(diào)用。3、編程求一個(gè)字符串的長(zhǎng)度,不得使用string.h中的庫(kù)函數(shù)。函數(shù)原型如下,請(qǐng)完成該函數(shù),并寫(xiě)出主函數(shù)予以測(cè)試。intmystrlen(char*s);/*當(dāng)s為“Hello”時(shí),長(zhǎng)度為5*/15.已知函數(shù)abc的定義為:voidabc(){……},則()。A.執(zhí)行函數(shù)abc后,函數(shù)沒(méi)有返回值B.執(zhí)行函數(shù)abc后,函數(shù)不再返回C.執(zhí)行函數(shù)abc后,可以返回任意類(lèi)型D.執(zhí)行函數(shù)abc后,可以返回整型值16.若要在程序中定義一個(gè)計(jì)算兩個(gè)整數(shù)相加的函數(shù),則下面定義()是正確的。A.intadd(inta,b){returna+b;}
B.add(inta,intb){returna+b;}C.intadd(inta,intb){returna+b;}D.intadd(inta,intb){returna+b}(34)有以下語(yǔ)句,則對(duì)a數(shù)組元素的引用不正確的是(0≤i≤9)inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;A)a[p-a]B)*(&a[i])C)p[i]D)*(*(a+i))考生答案:正確答案:D(33)以下不正確的定義語(yǔ)句是A)doublex[5]={2.0,4.0,6.0,8.0,10.0};B)inty[5.3]={0,1,3,5,7,9};C)charc1[]={′1′,′2′,′3′,′4′,′5′};D)charc2[]={′\x10′,′\xa′,′\x8′};考生答案:正確答案:B18.下面數(shù)組定義中正確的是()。A.inta[2][3]={1,2,3,4,5,6,7};B.intb[][3]={0,1,2,3};C.intcase[10][5]={0};D.intd[3][]={{1,2},{1,2,3},{1,2,3,4}};18.以下對(duì)二維數(shù)組a定義正確的是()。A.inta[3][];B.floata(3,4);C.doublea[1][4];D.floata(3)(4);20.若有定義charb[5],*p=b;,則正確的賦值語(yǔ)句是()。A.b="abcd" B.*b="abcd"C.p="abcd"D.*p="abcd"21.若有定義inta[]={1,4,7,10,13},*p=a;,則下列不表示數(shù)組元素a[3]的值的是()。A.*(p+3)B.*&a[3]C.*(a+3)D.*p+321.有語(yǔ)句chars[]="ACEG",*p=s;則printf("%c",*p+3);的輸出結(jié)果是()。A.CB.DC.ED.G21.已知 inta[]={1,2,3,4,5},b[]={6,7,8,9,10};int*p=a,*q=b+4;則*q-*p的值是()。A.3B.5C.7D.923.有結(jié)構(gòu)定義structstudent{charname[10];longstu_no;floatscore[3];}s1={"Li",830021,89,78,44};則s1.score[0]的值是()。A.78B.44C.89D.8322.有結(jié)構(gòu)定義如下:structstudent{intstu_num;charname[10];charsex;intscore;}*p;則p對(duì)成員變量sex的引用正確的是()。A.p->sexB.(*p)->sexC.p.sexD.(&p)->sex23.下列關(guān)于鏈表結(jié)點(diǎn)的定義,正確的是()。A.structnode{B.structnode{intdata;floatdata;int*next);};structnode*link;};C.structnode{D.structnode{floatdata;floatdata;structnode*link;}structnodepp;};23.若有結(jié)構(gòu)定義:structdate{intday,month,year;};structstudent{char*name;charsex;structdatebirthday;}myday;則結(jié)構(gòu)變量myday對(duì)于成員year的表示方法是()。A.myday.yearB.myday.birthday.yearC.myday.date.yearD.myday.birthday.date.year填空題(41)以下程序中函數(shù)sort的功能是對(duì)a數(shù)組中的數(shù)據(jù)進(jìn)行由大到小的排序voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(&aa[3],5);for(i=0;i<10;i++)printf("%d,",aa[i]);printf("\n");}程序運(yùn)行后的輸出結(jié)果是A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,C)1,2,3,8,7,6,5,4,9,10,D)1,2,10,9,8,7,6,5,4,3,考生答案:正確答案:C(18)以下程序的功能是:刪去一維數(shù)組中所有相同的數(shù),使之只剩一個(gè)。數(shù)組中的數(shù)已按由小到大的順序排列,函數(shù)返回刪除后數(shù)組中數(shù)據(jù)的個(gè)數(shù)。例如,若一維數(shù)組中的數(shù)據(jù)是:2223445666677899101010刪除后,數(shù)組中的內(nèi)容應(yīng)該是:2345678910。請(qǐng)?zhí)羁铡?include<stdio.h>#defineN80intfun(inta[],intn){inti,j=1;for(i=1;i<n;i++)if(a[j-1]【19】a[i])a[j++]=a[i];【20】;}main(){inta[N]={2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10},i,n=19;printf("Theoriginaldata:\n");for(i=0;i<n;i++)printf("%3d",a[i]);n=fun(a,n);printf("\nThedataafterdeleted:\n");for(i=0;i<n;i++)printf("%3d",a[i]);printf("\n\n");}A考生答案:正確答案:!=B考生答案:正確答案:returnjintb=2;intfunc(int*a){b+=*a;return(b);}main(){inta=2,res=2;res+=func(&a);printf("%d\n",res);}A)4B)6C)8D)10考生答案:正確答案:B填空編程題(20分,每空2分)1.求兩點(diǎn)之間的距離1.以下程序的功能是:輸入一個(gè)整數(shù),輸出這個(gè)數(shù)的絕對(duì)值,請(qǐng)?zhí)羁铡ain(){intx;scanf("%d",&x);if(x>=0)printf("%d\n",x);elseprintf("%d\n",__________);}1.以下程序的功能是:輸入一個(gè)整數(shù),判斷它的奇偶性,請(qǐng)?zhí)羁?。main(){inti;scanf("%d",&i);if()printf("%d是奇數(shù)",i);elseprintf("%d是偶數(shù)",i);}2.下面的程序是判斷一個(gè)數(shù)是否為素?cái)?shù)的程序。main(){ intx;scanf("%d",&x); for(inti=2;i<x;i++) if(x%i==0) { printf("不是素?cái)?shù)"); break; } if(__________) printf("是素?cái)?shù)");}2.下面程序用于輸出九九乘法表的下三角,即:1×1=12×1=22×2=4……………9×1=49×2=89×3=129×4=16……………9×9=81請(qǐng)完善程序。main(){inti,j;for(i=1;i<=9;i++){for(j=1;_____________;j++)printf("%d×%d=%d",i,j,i*j);printf("\n");}}(25)下面程序的功能是將從鍵盤(pán)輸入的一對(duì)數(shù),由小到大排序輸出,當(dāng)輸入一對(duì)相等數(shù)時(shí)結(jié)束循環(huán),請(qǐng)選擇填空。#include<stdio.h>main(){inta,b,t;scanf("%d%d",&a,&b);while(_______){if(a>b){t=a;a=b;b=t;}printf("%d,%d\n",a,b);scanf("%d%d",&a,&b);}}A)!a=bB)a!=bC)a==bD)a=b考生答案:正確答案:B3.下列程序的功能是從鍵盤(pán)輸入兩個(gè)double型數(shù)據(jù)給變量x和y,然后在main()函數(shù)中調(diào)用exchange()函數(shù)將變量x和y的內(nèi)容對(duì)調(diào)。voidexchange(double*x,double*y){doublet; t=*x;*x=*y;*y=t;}main(){doublex,y; scanf("%lf%lf",&x,&y); printf("x=%lfy=%lf\n",x,y); exchange(_____________); printf("x=%lfy=%lf\n",x,y);}3.下列程序的功能是將字符串t復(fù)制到字符串s中,并將s顯示出來(lái)。voidmystrcpy(char*str1,char*str2){inti=0;while(*str2) {*str1=*str2; str1++;str2++; } *str1=____________;}main(){ chars[20],t[20]; printf("Enterastring:"); scanf("%s",t);mystrcpy(s,t); printf("%s\n",s);}main()4.定義一個(gè)結(jié)構(gòu)類(lèi)型,要求輸入一個(gè)學(xué)生的數(shù)學(xué)和計(jì)算機(jī)兩門(mén)課的成績(jī),然后計(jì)算并輸出其平均成績(jī).main(){structstudent{intmath,computer;}stu;printf("pleaseinputscore:");scanf(
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 綠色建筑建筑節(jié)能監(jiān)理評(píng)價(jià)報(bào)告范文
- 中國(guó)辦公用計(jì)算機(jī)系統(tǒng)調(diào)試行業(yè)發(fā)展監(jiān)測(cè)及投資戰(zhàn)略規(guī)劃建議報(bào)告
- 機(jī)動(dòng)車(chē)燃料零售行業(yè)分析報(bào)告
- 光伏自檢報(bào)告模板
- 人工勞務(wù)服務(wù)合同范本
- simtrade銷(xiāo)貨合同范本
- 醫(yī)藥研發(fā)合同范本
- “十三五”規(guī)劃重點(diǎn)-石油加油站項(xiàng)目建議書(shū)(立項(xiàng)報(bào)告)
- 冷鏈車(chē)輛采購(gòu)合同范本
- 農(nóng)村承包山林合同范本
- (高清版)WST 408-2024 定量檢驗(yàn)程序分析性能驗(yàn)證指南
- 復(fù)工復(fù)產(chǎn)安全檢查記錄(總表)
- 醫(yī)療PDCA案例模板
- YB∕T 5363-2016 裝飾用焊接不銹鋼管
- 江蘇省2023年中職職教高考文化統(tǒng)考語(yǔ)文
- 客戶投訴處理情況總結(jié)范文
- 危險(xiǎn)化學(xué)品押運(yùn)員培訓(xùn)
- 干細(xì)胞市面推廣方案
- 國(guó)家基本藥物知識(shí)培訓(xùn)課件
- QCT 291-2023 汽車(chē)機(jī)械式分動(dòng)器總成性能要求和臺(tái)架試驗(yàn)方法 (正式版)
- 浙教版勞動(dòng)八年級(jí)下冊(cè)全冊(cè)教案教學(xué)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論