C語言考試題及答案(一) | IT人
文章推薦指數: 80 %
C語言(一) 一選擇題(7分,每小題0.5分) 1.C語言源程式的基本單位是( )。
A 過程B 函式C 子程式D 識別符號2.下列程式的輸出結果是( c)。
main( ) ...
Togglenavigation
IT人
IT人
C語言考試題及答案(一)
養生護髮發表於
2020-09-30
C語言(一)一選擇題(7分,每小題0.5分)1.C語言源程式的基本單位是()。
A過程B函式C子程式D識別符號2.下列程式的輸出結果是(c)。
main(){inta=7,b=5;printf("%d\n",b=b/a);}A5B1C0D不確定值3.假設變數a,b均為整型,表示式(a=5,b=2,a>b?a++:b++,a+b)的值是(b)。
A7B8C9D24.設a為int型變數,執行下列賦值語句後,a的取值分別是(b)。
a=125.534;a=(int)125.521%4;a=5<<2;A125,31,1B125,1,20C125,31,20D125.534,2,205.設有如下程式段,下面描述中正確的是(C)。
intk=10;while(k=0)k=k-1;A迴圈執行一次B迴圈是無限迴圈C迴圈體語句一次也不執行D迴圈體語句執行一次6.以下程式的輸出結果為(A)。
inti;voidprt(){for(i=5;i<8;i++)printf("%c",’*’);printf("\t");}main(){for(i=5;i<=8;i++)prt();}A***B************C******D***7.在C語言程式中,以下說法正確的是(B)。
A函式的定義可以巢狀,但函式的呼叫不可以巢狀B函式的定義不可以巢狀,但函式的呼叫可以巢狀C函式的定義和函式的呼叫都不可以巢狀D函式的定義和函式的呼叫都可以巢狀
8.以下函式呼叫語句中含有(A)個實參。
func((e1,e2),(e3,e4,e5));A2B3C5D語法錯誤9.以下程式的輸出結果為(A)。
#defineADD(x)x*xmain(){inta=4,b=6,c=7,d=ADD(a+b)*c;printf(“d=%d”,d);}Ad=70Bd=80Cd=140Dd=70010.已知職工記錄描述如下,在TurboC中,系統為變數w分配(C)位元組的空間。
structworker{intno;charname[20];charsex;union{intday;intmonth;intyear;}birth;}w;A29B20C25D611.設有以下定義,值為5的列舉常量是(A)。
enumweek{sun,mon=4,tue,wed,thu,fri,sat}w;AtueBsatCfriDthu12.下面選項中正確的賦值語句是(設chara[5],*p=a;)(A)。
Ap=“abcd”;Ba=“abcd”;C*p=“abcd”;D*a=“abcd”;13.設有以下程式段,則值為6的表示式是(B)。
structst{intn;structst*next;};staticstructsta[3]={5,&a[1],7,&a[2],9,0},*p;p=&a[0];Ap+±>nB++p->nCp->n++D(*p).n++14.C語言中的檔案型別只有(D)。
A索引檔案和文字檔案兩種B文字檔案一種C二進位制檔案一種DASCII碼檔案和二進位制檔案兩種二判斷對錯,對的劃“√”,錯的劃“×”(5分,每小題0.5分)1.在TurboC中,整型資料在記憶體中佔2個位元組。
()2.inti=20;switch(i/10){case2:printf(“A”);case1:printf(“B”);}的輸出結果為A。
()3.break語句用在迴圈體中,可結束本層迴圈,continue語句用在迴圈體中,可結束本次迴圈。
()4.函式的遞迴呼叫不過是一個函式直接或間接地呼叫它自身。
()5.函式strlen(“ASDFG\n”)的值是7。
()6.通過return語句,函式可以帶回一個或一個以上的返回值。
()7.結構體型別只有一種。
()8.char*p=“girl”;的含義是定義字元型指標變數p,p的值是字串"girl"。
()9.若有定義:char*p(chara[10]);則p是函式名。
()10.用fopen(“file”,“r+”);開啟的檔案"file"可以進行修改。
()
三寫出下列程式的執行結果(10分,每小題2分)
1.floataverage(floatarray[10]){inti;floataver,sum=array[0];for(i=1;i<10;i++)sum=sum+array[i];aver=sum/10;return(aver);}main(){floatscore[10]={89,67.5,78,91,56,82.5,65,70,79,88},aver;inti;aver=average(score);printf(“averagescoreis%5.2f\n”,aver);}2.main(){chara[5]={‘A’,‘B’,‘C’,‘D’,‘E’},p=a,pa;for(p=0;p=20)break;if(b%31){b+=3;continue;}b-=5;}printf(“a=%d\tb=%d\n”,a,b);}4.main(){printf(“main():%d\n”,fact(5));fact(-5);}fact(intvalue){intf;if(value<0){printf(“Argerror\n");return(-1);}elseif(value1||value==0)f=1;elsef=valuefact(value-1)+1;printf(“Thiscalledvalue=%d\n”,f);returnf;}5.main(){inta=012,b=0x12,k=12;charc=‘\102’,d=‘\r’;printf(“a=%d\tb=%d\tk=%d\n”,a,b,k);printf(“c=%c,d=%c%o\n”,c,d,a);a=‘A’;c=49;printf(“a=%d\tc=%c\n”,a,c);}四閱讀下列程式,在處填入適當內容,使程式完整(8分,每個空1分)1.有一個3*4矩陣,求其中的最大元素。
max_value((1)){inti,j,max;max=array[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(array[i][j]>max)max=array[i][j];(2);}main(){inta[3][4],i,j;for(i=0;i<3;i++)for(j=0;j<4;j++)(3);printf(“maxvalueis%d\n”,max_value(a));}
2.輸入x、y兩個整數,按先大後小的順序輸出x、y。
#include“stdio.h”main(){intx,y,*px,*py,(4);scanf(“%d%d”,&x,&y);(5);(6);if(x
A存放讀入資料項的儲存區B存放讀入資料的地址或指向此地址的指標C一個指向所讀檔案的檔案指標D一個整形變數,代表要讀入的資料項總數2.以下程式的輸出結果為()。
main(){inti=010,j=10;printf("%d,%d\n",i++,j–);}A11,9B9,10C8,10D9,93.設a為int型變數,執行下列賦值語句後,a的取值分別是()。
a=125.534;a=20.0/3;a=(int)125.521%4;a=5<<2;A125,6,31,1B125,6,1,20C125,6.666666,31,20D125.534,6.666666,2,204.設i和k都是int型別,則for迴圈語句()。
for(i=0,k=-1;k=1;i++,k++)printf("****\n");A迴圈結束的條件不合法B迴圈體一次也不執行C迴圈體只執行一次D是無限迴圈5.以下程式的輸出結果為()。
main(){charc;inti;for(i=65;i<68;i++){c=i+32;switch©{case‘a’:case‘b’:case‘c’:printf("%c,",c);break;default:printf(“end”);}}}Aa,b,c,endBa,a,a,endCa,a,a,Da,b,c,6.函式呼叫語句:fseek(fp,-10L,2);的含義是()。
A將檔案位置指標從檔案末尾處向檔案頭的方向移動10個位元組B將檔案位置指標從當前位置向檔案頭的方向移動10個位元組C將檔案位置指標從當前位置向檔案末尾方向移動10個位元組D將檔案位置指標移到距離檔案頭10個位元組處
7.以下程式的輸出結果為()。
main(){chars1[40]=“country”,s2[20]=“side”;inti=0,j=0;while(s1[i]!=’\0’)i++;while(s2[j]!=’\0’)s1[i++]=s2[j++];s1[i]=0;printf("%s\n",s1);}AsideBcountryCsidetryDcountryside8.下列說法不正確的是()。
A主函式main中定義的變數在整個檔案或程式中有效B不同函式中,可以使用相同名字的變數C形式引數是區域性變數D在一個函式內部,可以在複合語句中定義變數,這些變數只在本複合語句中有效9.在下列程式段中,列舉變數c1的值是()。
enumcolor{red,yellow,blue=4,green,white}c1;c1=yellow;c1=white;A1B3C5D610.設有說明int(*ptr)();其中識別符號ptr是()。
A是一個指向整形變數的指標B是一個指標,它指向一個函式值是int的函式C是一個函式名D定義不合法11.定義由n個指向整形資料的指標組成的陣列p,其正確的方式為()。
Aintp;Bint(*p)[n];Cint*p[n];Dint(*p)();12.具有相同型別的指標型別變數p與陣列a,不能進行的操作是()。
Ap=a;B*p=a[0];Cp=&a[0];Dp=&a;二判斷對錯,對的劃“√”,錯的劃“×”(20分,每小題2分)1.參加位運算的資料可以是任何型別的資料。
()2.若有定義和語句:inta;charc;floatf;scanf("%d,%c,%f",&a,&c,&f);若通過鍵盤輸入:10,A,12.5,則a=10,c=‘A’,f=12.5。
()3.C語言把檔案看作是一個字元(位元組)的序列。
()4.若有巨集定義:#defineS(a,b)t=a;a=b;b=t由於變數t沒定義,所以此巨集定義是錯誤的。
()5.在TurboC中,下面的定義和語句是合法的:file*fp;fp=fopen(“a.txt”,“r”)😭)6.若有定義:chars[]="china";則TurboC系統為陣列s開闢6個位元組的記憶體單元。
()7.若有定義和語句:inta[3][3]={{3,5},{8,9},{12,35}},i,sum=0;for(i=0;i<3;i++)sum+=a[i][2-i];則sum=21。
()8.若有定義和語句:structstudent{intnum;charname[10];floatscore;}s[5]={{1,“lili”,98.5},{9,“xiaohua”,66}},*p=s;printf("%d",p++);輸出結果是1。
()9.在程式中定義了一個結構體型別後,可以多次用它來定義具有該型別的變數。
()10.在TurboC中,此定義和語句是合法的:enumaa{a=5,b,c}bb;bb=(enumaa)5;()三寫出下列程式的執行結果(36分,每小題6分)1.main(){inti=29,j=6,k=2,s;s=i+i/j%k-9;printf(“s=%d\n”,s);}2.main(){intx=31,y=2,s=0;do{s-=xy;x+=2;y-=3;}while(x%3==0);printf(“x=%d\ty=%d\ts=%d\n”,x,y,s);}3.main(){inta[6]={10,20,30,40,50,60},i;invert(a,0,5);for(i=0;i<6;i++)printf(“%d,”,a[i]);printf(“\n”);}invert(ints[],inti,intj){intt;if(i
#defineN10charstr[N];main(){inti,flag;for(flag=1;flag1;){scanf("%s",str);flag=0;printf("\n");}sort(___(4)___);for(i=0;i
(本程式中二階矩陣用一維陣列來表示。
)例如,矩陣為:300325731042則所有靠外側的各元素值之和為3+0+0+3+2+3+1+0+4+2=18。
add(intm,intn,intarr[]){inti,j,sum=0;for(i=0;i
延伸文章資訊
- 1C語言基礎選擇題? - WhatsUp
C語言基礎選擇題? 1. ( )不是C語言的運算子。 A) =〉 B) || C) -〉 D) == 2. 有如下程式段:int *p,a=10,b=1;p=&a; a=*p+b;執行該程式段後...
- 2c++ 筆試試題參考.pdf
成功高中101 學年高一上程式語言C++ 期末考筆試試卷班級座號: 選擇題共四十題(每題2.5 分答對給分,答錯不倒扣). #include<iostream> using namespace ...
- 3C語言程式選擇題。 - 極客派
c語言選擇題,C語言程式選擇題。,1樓我兒王騰大帝之資short int 定義的和int定義在32位計算機上是一樣的,都是兩個位元組,有符號的整型數。
- 4國立臺北教育大學102 學年度學士班轉學考試- 學年科- 學系(組)
一、選擇題: (以下題目皆以C/C++語言出題,每題答案可能為一個或是多. 個,請自行判斷。 ... (每題2分,共50 分). 1. C語言char cName[10]="NTUE”;的宣告,...
- 550道C語言選擇題來襲!20分鐘時間考驗你的掌握程度
以下整理50道C語言基礎選擇題。看看你是否能在20分鐘內做出來,並且做對?好了,廢話不多說,開始動手吧!C語言1.以下不是C語言的特點的是( )。