第一篇:電大 2014年7月 c語(yǔ)言 考試復(fù)習(xí)
一、單選題(每小題2 分,共20 分)
1.程序運(yùn)行中需要從鍵盤(pán)上輸入多于一個(gè)數(shù)據(jù)時(shí),各數(shù)據(jù)之間默認(rèn)使用(D)符號(hào)作為 分隔符。
A.空格或逗號(hào) c.逗號(hào)或分號(hào) B.逗號(hào)或回車D.空格或回車
2.邏輯表達(dá)式(x>O && x<=10)的相反表達(dá)式為(A)。
A.x<=O 11 x>lOc.x<=O 11 x<=10B.x<=O && x>lOD.x>O && x>lO
3.當(dāng)處理一個(gè)問(wèn)題時(shí)的循環(huán)次數(shù)已知時(shí),最好采用(A)語(yǔ)句來(lái)解決。
A.for B.whilec.do-while D.switch
4.假定i 的初值為0,則在循環(huán)語(yǔ)句“while(i A.n-1c.n+1B.nD.n/2 5.假定一個(gè)二維數(shù)組的定義語(yǔ)句為“int a[3][4]={{3,4,{2,8,6}} 戶,則元素a[l][l] 的值為(D)。 A.2C.6B.4D.8 6.在下列選項(xiàng)中,不正確的畫(huà)數(shù)原型格式為(C)。 A.int FunctionCint a);B.void Function(char); c.int Function(a 禱b);D.void int(double 贊a); 7.假定p 是一個(gè)指向float 類型的數(shù)據(jù)指針,則p+1 所指向的數(shù)據(jù)的地址比p 所指向的 數(shù)據(jù)的地址大(C)個(gè)字節(jié)。 A.1 B.2C4D8 8.假定有一條定義語(yǔ)句為”int m=7,鑄p 戶,則給p 賦值的正確表達(dá)式為(B)。 A.p=m B.p=&.mc.鑄p=&.m D.p= 鈴m 9.假定指針變量p 定義為“int 禱p=malloc(sizeof(i nt));”,要釋放p 所指向的動(dòng)態(tài)存儲(chǔ) 空間,應(yīng)調(diào)用的函數(shù)為(A)。 A.free(p)c.free(禱p)B.delete(p)D.free(&'p) 10.C 語(yǔ)言中的系統(tǒng)函數(shù)fopenO 是(D)一個(gè)數(shù)據(jù)文件的函數(shù)。 A.讀取c.關(guān)閉B.寫(xiě)入D.打開(kāi) 1.C語(yǔ)言源程序文件的缺省擴(kuò)展名為(D)。 A.cppB.exeC.objD.c 2.設(shè)x 和y 均為邏輯值,則x &.&.y 為真的條件是(A)。 A.它們均為真B.其中一個(gè)為真C.它們均為假D.其中一個(gè)為假 3.在下列的符號(hào)常量定義中,正確的定義格式為(C)。 A.# define MlC.# define M3 10B.canst int M2 20D.canst char mark 4.for 循環(huán)語(yǔ)句能夠被改寫(xiě)為(D)語(yǔ)句。 A.復(fù)合B.ifC.switch D.while 5.在下面的一維數(shù)組定義中,錯(cuò)誤的定義格式為(C)。 A.int a[J === {l ,2, 3};C.int a[J;B.int a[lOJ==={O};D.int a[5J; 6.若有一個(gè)函數(shù)原型為“double * function()“,則其返回值類型為(B)。 A.實(shí)數(shù)型B.實(shí)數(shù)指針型C.函數(shù)指針型D.?dāng)?shù)組型 7.在C語(yǔ)言中,所有預(yù)處理命令都是以(B)符號(hào)開(kāi)頭的。 A., B.#C.衣U.@ 8.假定整數(shù)指針p所指數(shù)據(jù)單元的值為30, p+ 1 所指數(shù)據(jù)單元的值為40,則執(zhí)行 ,p++后,p所指數(shù)據(jù)單元的值為(A)。 A 40 B.30C.70 D.10 9.若要使p指向二維整型數(shù)組a[10][20],則p的類型為(D)。 A.mnt *B.m nt * *C.mnt*[20二D.mnt (二)[20 〕 10.表示文件結(jié)束符的符號(hào)常量為(C)。 A.eof B.EofC.EOF U.feof由C語(yǔ)言目標(biāo)文件連接而成的可執(zhí)行文件的缺省擴(kuò)展名為(B A cppB exeC objD c 2.設(shè)有兩條語(yǔ)句為“mt a~3;a 十二a * a;”,則執(zhí)行結(jié)束后,a的值為(A A 12B 18C 15D 27 3.帶有隨機(jī)函數(shù)調(diào)用的表達(dá)式rand()%2o 的值在(C)區(qū)間內(nèi)。 A.1~19B 1~20C.0-49D.0-20 4.在for循環(huán)語(yǔ)句“for(i~0;i A.nB.n+1C.n 一1D.n 一2 5.在下列的字符數(shù)組定義中,存在語(yǔ)法錯(cuò)誤的是(D A.char a[20] 二“abcdefg“;C.char a[15]={'1','2') B.char a[]=”x+y 一55.“;D.char a[10]='5' 6.在下面的畫(huà)數(shù)原型聲明中,存在語(yǔ)法錯(cuò)誤的是(C) A.int AA(int a ,int b);C.int AA(int a;int b;); B.int AA(i時(shí),int);D.int AA(int a.int); 7.假定a 為一個(gè)數(shù)組名,則下面存在錯(cuò)誤的表達(dá)式為(B).A.a[i]C.*aB.*a+ +D.*(a+ l) 8.假定有定義為”int a [IO].x,警pa=a;“,若要把數(shù)組a中下標(biāo)為3的元素值賦給x,則不正確的賦值為(D).A.x=pa[3] B.x= *(a+3)C.x=a[3] D.x= *pa+3 9.字符串”y = % d n“的長(zhǎng)度為(A A.5C.4B.6D.3 10.向一個(gè)二進(jìn)制文件中寫(xiě)人信息的畫(huà)數(shù)為(D)。 A.fgetsO B.fputsOC.freadO D.fwriteO 二、填空題(每小題2 分,共26 分) 11.C 語(yǔ)言中的每條簡(jiǎn)單語(yǔ)句以;作為結(jié)束符。 12.C 程序中的所有預(yù)處理命令均以 #字符開(kāi)頭void 14.十進(jìn)制數(shù)25 表示成符合C 語(yǔ)言規(guī)則的十六進(jìn)制數(shù)為 0x19 15.關(guān)系表達(dá)式a>b 的相反式為 a<=b保留字來(lái)定義函數(shù)類型。 16.執(zhí)行”typedef int DataType;“語(yǔ)句后,DataType 與int 保留字具有相同作用。 17.假定一維數(shù)組的定義為” char 禱a[8J 戶,則該數(shù)組所占用的存儲(chǔ)空間的字節(jié)數(shù)為32 18.假定二維數(shù)組的定義為“double a[MJ[NJ 戶,則所有元素的列下標(biāo)的取值范圍在0~N-1 19.存儲(chǔ)一個(gè)空字符串需要占用1個(gè)字節(jié)。 2:0.strcpy 函數(shù)用于把一個(gè)字符串拷貝到另一個(gè)字符數(shù)組空間中。 2: 1.程序中的每個(gè)編譯單位是一個(gè)程序文件 2:2.假定a 是一個(gè)一維數(shù)組,則a[iJ 的指針訪問(wèn)方式為*(a +i) 2:3.執(zhí)行int 叩= malloc(sizeof(i nt))操作得到的一個(gè)動(dòng)態(tài)分配的整型對(duì)象為 *P。 11.用于輸出表達(dá)式值的標(biāo)準(zhǔn)輸出函數(shù)的函數(shù)名是 printf 12.C 語(yǔ)言中的每個(gè)程序文件在編譯時(shí)可能出現(xiàn)有error 類型的錯(cuò)誤,它屬于(致命性/警告性)致命性 13.已知’A z’的ASCII碼為65-90,當(dāng)執(zhí)行“tnt x二'C'+3;”語(yǔ)句后x的值為70 14 表達(dá)式(int)14.6 的值為 14假定不允許使用邏輯非操作符,則關(guān)系表達(dá)式x + y> 5 的相反表達(dá)式為x+y<=5 16 假定x一5,則執(zhí)行 “a=(x? 10:20);” 語(yǔ)句后a的值為 10假定一維數(shù)組的定義為“char 二a [ M 〕;”,則該數(shù)組所占存儲(chǔ)空間的字節(jié)數(shù)為 4*M 18.存儲(chǔ)字符串”獷需要至少占用存儲(chǔ)空間中的_2 19.strlen()函數(shù)用于計(jì)算一個(gè)字符串的 長(zhǎng)度在C語(yǔ)言中,一個(gè)函數(shù)定義由函數(shù)頭和 函數(shù)體 這兩個(gè)部分組成。 21假定p所指對(duì)象的值為25,p 十I所指對(duì)象的值為 46,則執(zhí)行表達(dá)式*(p++)后,p所指對(duì)象的值為 46 22.假定p是一個(gè)變量,則該變量的地址表示為 &p。 23.把間接訪問(wèn)表達(dá)式p->narne 改寫(xiě)成對(duì)應(yīng)的直接訪問(wèn)表達(dá)式為('p).name 11.一個(gè)畫(huà)數(shù)定義由 函數(shù)頭 和函數(shù)體兩部分組成。 12.執(zhí)行“p:r;intf(”%c飛'F' 一2)產(chǎn)語(yǔ)句后得到的輸出結(jié)果為 D 13.int 數(shù)據(jù)類型的長(zhǎng)度為 4 14.表達(dá)式25/4 的值為 6 15.若x=5,y=10,則執(zhí)行“if(x<=y)c=3;else c=8;”語(yǔ)句后,c 的值為 3 16.保留字case 和default 出現(xiàn)在(if/switch/for/while)語(yǔ)句中.switch 17.在畫(huà)數(shù)調(diào)用中執(zhí)行到return數(shù)的執(zhí)行過(guò)程,返回到調(diào)用該畫(huà)數(shù)的原來(lái)位置。return 18.假定二維數(shù)組的定義為“char arM][N] 戶,則該數(shù)組共包含有個(gè)字符元素。M * N 19.存儲(chǔ)字符' a ' 需要占用存儲(chǔ)器的個(gè)字節(jié)空間。1 20.若一個(gè)字符串的長(zhǎng)度為n,則存儲(chǔ)它的字符數(shù)組的長(zhǎng)度至少為 n+11.假定p 所指對(duì)象的值為25,p+1 所指對(duì)象的值為46,則執(zhí)行表達(dá)式(鈴p)十+ 后,p所指對(duì)象的值為 26 22.假定p 是一個(gè)指向整數(shù)對(duì)象的指針,則用表示該整數(shù)對(duì)象。*P 23.假定一個(gè)結(jié)構(gòu)類型的定義為”struct B{int a[5];char b;} 戶,則該類型的理論長(zhǎng)度為 24 三、寫(xiě)出下到每個(gè)程序運(yùn)行后的輸出結(jié)果{每小題6 分,共30 分) 24.# include 25.# include 輸出結(jié)果: k=5 26.# include 輸出結(jié)果:123 27.# include 輸出結(jié)果:4766 28.:# include piintf(”%d %7.2f n“ , y.age+p 一>age,p 一>pay+60); 輸出結(jié)果: 962560.00 24.#include :pprirnintft(f“(%”%s,s, ,I ,default“); 輸出結(jié)果:default 25.# include 輸出結(jié)果:1 4 13 40 26.#include mnt i,cI =0,c2 = 0;for(i=0;i<8;i 十+)i f(a 仁i〕% 2==I)cl++:else c2++; print f(“% d,%d n”,ci,c2);} 輸出結(jié)果:4,4 27.# include mnt I,n= sirlen(s);for(i=0;i 輸出結(jié)果:987654321 28.#include retUrn S;}void main(){mnt a[ 〕= {1,2,3,4,5};mnt b=1.B(a,5);prlntf(', o=%dn“,b);} 輸出結(jié)果:h=120 24.*1= include 25.*1= include 輸出結(jié)果 s=15 26.# include 輸出結(jié)果 3 5 27.# include 輸出結(jié)果 s=48 28.# include 輸出結(jié)果 s=10000.00 四、寫(xiě)出下到每個(gè)函數(shù)的功能{每小題6 分,共12 分} 29.int WC(int a口,int n , int k){int i, c=O;for(i=O;i 30.假定結(jié)構(gòu)類型struct Worker 的定義體為: {char name[15J;int age;float pay;}。 void QA(struct Worker a[J , int n)mt 1;for(i=O;i 29.mnt FH(){mnt x,y=o;scanfC'%d”,&x);while(x>0)(y+=X;scanf(“%d”,&x);return y;函數(shù)功能:求出從鍵盤(pán)上輸人的一批整數(shù)的總和,以小于等于。作為結(jié)束鍵盤(pán)輸人的標(biāo)志。 30.假定結(jié)點(diǎn)的結(jié)構(gòu)類型用lntNode 表示,它的數(shù)值域?yàn)閐ata,鏈接指針域?yàn)閚ext, 請(qǐng)根 據(jù)下面函數(shù)定義寫(xiě)出相應(yīng)的功能。 mnt FF(struct IntNode * f)//f 為指向一個(gè)單鏈表的表頭指針mnt n=0if(f 一= NULL)return 0;while(f){n++;f=f 一> next;return n;} 函數(shù)功能:求出并返回由f所指向的單鏈表中所含結(jié)點(diǎn)的個(gè)數(shù)。 29.假定使用SF(30)調(diào)用下面畫(huà)數(shù),則得到的輸出結(jié)果為void SF(int x){int i=2;while(x>= i){if(x%i= =0){printf(“%d”,i);x/=i;}i++;}} 函數(shù)功能2 3 5 30.假定結(jié)點(diǎn)的結(jié)構(gòu)類型為IntNode,它的數(shù)值域?yàn)閐ata,鏈接指針域?yàn)閚ext,請(qǐng)指出下面函數(shù)的功能。void QC(struct IntNode 鈴。{ Ilf 為一個(gè)單鏈表的表頭指針while(f){printf(“%d ” ,f一>data);f=f 一>next;}} 函數(shù)功能遍歷輸出由表頭指針f 所指向的單鏈表中每個(gè)結(jié)點(diǎn)的data 域的值。 五、按題目要求編寫(xiě)程序或函數(shù){每小題6 分,共12 分} 31.編寫(xiě)一個(gè)程序,輸出50 以內(nèi)(含50)的、能夠被3 或者5 整除的所有正整數(shù)。# include void mainO{ mt 1; for(i=3;i<=50;i++) if(i%3= =0 11 i%5= =0)printf(“%d ” ,i); printf(”n“);} 32.按照”int FF(int a口,int n)“ 的函數(shù)聲明,編寫(xiě)出遞歸函數(shù)的定義,求出數(shù)組a 中所有n 個(gè)元素之積并返回。 int FF(int a[],int n) {if(n<=O){printf(”n值非法n“),exit(l);} if(n= = 1)return a[O]; else return a[n-1] *FF(a,n-1);} 31.根據(jù)函數(shù)原型”double Mean(double a[Mi[N],int m, mnt n)“,編寫(xiě)函數(shù)定義,要求返 回二維數(shù)組a[m][n」中所有元素的平均值。假定在計(jì)算過(guò)程中采用變量S存放累加值,采用 和i作為掃描數(shù)組的循環(huán)變量。 double Mean(double a[M][N],mrlt m,mnt n) { tnt i.j double s=0.0 for(i = 0;i for(j = 0;i return s/(m,n);} 32.根據(jù)函數(shù)原型”mnt MM(int a[] ' mnt m)“,編寫(xiě)函數(shù)定義,計(jì)算并返回?cái)?shù)組a[m]中所 有元素的最大值的平方值,假定用變量max保存最大值。 mnt MM(int a[j,mnt m) {tnt t,max =a[0三; for(i=1 i if(a[i]>max)max =a[ i]; return max * max 1/6} 31.編寫(xiě)一個(gè)主函數(shù),利用while 循環(huán)計(jì)算1+2+4+ ?+21 0 的值,最后輸出計(jì)算結(jié)果。假定計(jì)數(shù)變量用i表示,每次累乘2的變量用p 表示,每次累加一個(gè)數(shù)據(jù)項(xiàng)值的變量用sum void mainO {int i=l , p=l , sum=l; while(i<=10){p *=2;sum+=p;i++;} printf(“SUM=%dn”, sum);} 32.根據(jù)函數(shù)原型”void DD(int a口,int n , int MM)"編寫(xiě)函數(shù)定義,幸IJ 用雙重for 循環(huán)統(tǒng)計(jì)出數(shù)組a [ n]中任何兩個(gè)不同元素的值等于MM值的配對(duì)個(gè)數(shù),然后返回統(tǒng)計(jì)結(jié)果。如假定aCi] +a[j]等于MM,同時(shí)i手j,則為一個(gè)配對(duì)。 int DD(int a口,int n , int MM) {int i ,j ,c=O; for(i=O;i for(j=i+1;j if(a[iJ+a[jJ= =MM)c++; return c;} C語(yǔ)言考試復(fù)習(xí)要點(diǎn): 一. 題型: 1.選擇題——最基本的知識(shí)點(diǎn),概念——共20分 2.程序運(yùn)行結(jié)果分析——10道程序題——共30分 (來(lái)源于課本例題和作業(yè),復(fù)習(xí)的重點(diǎn)是多看課本程序和作業(yè)程序) 3.程序填空題——一個(gè)完整的程序挖掉一些空格——共四個(gè)程序,10個(gè)空格——共30分 4.編程題——有兩道——一道課后作業(yè),比較容易,8分——另外一道比較難,12分——共20分 二. 了。 2.第五章到第八章的內(nèi)容是核心內(nèi)容,要重點(diǎn)復(fù)習(xí),題型覆蓋所有題目。 3.第九章主要復(fù)習(xí)宏定義和宏替換。 4.第十章考的不多,集中在10.2和10.3兩節(jié)。 復(fù)習(xí)策略: 1.第一章到第四章的內(nèi)容比較少,基本是考概念一些小題,以選擇題為主,瀏覽一下就行 《C語(yǔ)言程序設(shè)計(jì)》課程考試題庫(kù) 第一章 C語(yǔ)言概述 一、單項(xiàng)選擇題 1、C 語(yǔ)言規(guī)定,必須用()作為主函數(shù)名。A.Function B.include C.main D.stdio 答案:C 2、()是C 程序的基本構(gòu)成單位。 A.函數(shù) B.函數(shù)和過(guò)程 C.超文本過(guò)程 D.子程序 答案:A 3、在 C 語(yǔ)言中,每個(gè)語(yǔ)句和數(shù)據(jù)定義是用()結(jié)束。A.句號(hào) B.逗號(hào) C.分號(hào) D.括號(hào) 二、判斷題 1、一個(gè) C 程序可以包含任意多個(gè)不同名的函數(shù),但有且僅有一個(gè)主函數(shù)。()答案:正確 2、C 語(yǔ)言規(guī)定: 在一個(gè)源程序中, main函數(shù)的位置必須在最開(kāi)始。()答案:錯(cuò)誤 3、在 C 程序中語(yǔ)句是以分號(hào)結(jié)束的。() 答案:正確 第二章 程序的靈魂——算法 一、單項(xiàng)選擇題 1、一個(gè)算法應(yīng)該具有“確定性”等5個(gè)特性,下面對(duì)另外4個(gè)特性的描述中錯(cuò)誤的是()A.有0個(gè)或多個(gè)輸入 B.有0個(gè)或多個(gè)輸出 C.有窮性 D.可行性 答案:B 2、以下敘述中正確的是()。A.C語(yǔ)言比其它語(yǔ)言高級(jí)。 B.C語(yǔ)言可以不用編譯就能被計(jì)算機(jī)識(shí)別執(zhí)行。 。C.C語(yǔ)言以接近英語(yǔ)國(guó)家的自然語(yǔ)言和數(shù)學(xué)語(yǔ)言作為語(yǔ)言的表達(dá)形式。D.C語(yǔ)言出現(xiàn)的,具有其它語(yǔ)言的一切優(yōu)點(diǎn)。答案:C 3、以下敘述正確的是()。 A.C語(yǔ)言的源程序不必通過(guò)編譯就可以直接運(yùn)行。 B.C語(yǔ)言中的每條可執(zhí)行語(yǔ)句最終都將被轉(zhuǎn)換成二進(jìn)制的機(jī)器指令。C.C語(yǔ)言源程序經(jīng)編譯形成的二進(jìn)制代碼可以直接運(yùn)行。D.C語(yǔ)言中的函數(shù)不可以單獨(dú)進(jìn)行編譯。答案:B 答案:B 二、判斷題 1、C語(yǔ)言的書(shū)寫(xiě)格式不會(huì)影響程序的可讀性。()答案:錯(cuò)誤 2、C 語(yǔ)言程序?qū)崿F(xiàn)與其他高級(jí)語(yǔ)言一樣也要經(jīng)過(guò)編輯、編譯連接和運(yùn)行這樣的三步曲。(答案:正確 3、健壯的算法不會(huì)因?yàn)榉欠ㄝ斎攵霈F(xiàn)莫名其妙的狀態(tài)。()答案:正確 第三章 數(shù)據(jù)類型 運(yùn)算符與表達(dá)式 一、單項(xiàng)選擇題 1、下列字符串是標(biāo)識(shí)符的是()。 A._HJ B.9_student C.long D.LINE 1 答案:A 2、()不是 C 語(yǔ)言提供的合法關(guān)鍵字。 A.switch B.print C.case D.default 答案:B 3、判斷字符型變量 ch 為小寫(xiě)字母的表達(dá)式是()。 A.’a’<=ch<=’z’ B.(ch>=a)&&(ch<=z)C.(ch>=’a’)||(ch<=’z’)D.(ch>=’a’)&&(ch<=’z’)答案:D 4、在C 語(yǔ)言中,回車換行符是()。A.n B.t C.v D.b)答案:A 5、設(shè)整型變量 a 值為9,則下列表達(dá)式中使 b 的值不為4的表達(dá)式()。A.b=a/2 B.b=a%2 C.b=8-(3,a-5)D.b=a>5?4:2 答案:B 6、能正確表示 x 的取值范圍在[0,100]和[-10,-5]內(nèi)的表達(dá)式是()。A.(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)B.(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)C.(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)D.(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)答案:B 7、10+’a’+1.5-567.345/’b’的結(jié)果是()型數(shù)據(jù)。A.long B.double C.int D.unsigned float 答案:B 8、設(shè) a、b 和 c 是 int 型變量,且 a=2,b=4,c=6,則下面表達(dá)式中值為 0 的是()。A.‘a(chǎn)’+ ‘b’ B.a<=b C.a||b+c&&b-c D.!((a 9、已知在ASCII字符集中,字母A的序號(hào)為65,下面程序的輸出結(jié)果為()。main(){char c=’A’;int i=10;c=c+10;i=c%i;printf(“%c,%dn”,c,i);} A.75,7 B.75,5 C.K,5 D.因存在非圖形字符,無(wú)法直接顯示出來(lái) 答案:C 10、C 語(yǔ)言中最簡(jiǎn)單的數(shù)據(jù)類型包括()。 A.整型,實(shí)型,邏輯型 B.整型,實(shí)型,字符型 C.整型,字符型,邏輯型 D.整型,實(shí)型,邏輯型,字符型 答案:B 11、C 語(yǔ)言中,運(yùn)算對(duì)象必須是整型數(shù)的運(yùn)算符是()。A.% B.C.% 和 D.** 答案:A 12、下面程序的輸出結(jié)果是()。mian(){int x=2,y=0,z;x*=3+2;printf(“%d”,x);x*=y=z=4;printf(“%d”,x);} A.8 40 B.10 40 C.10,4 D.8,4 答案:B 13、下面程序的輸出結(jié)果是()。main(){int i,j;i=16;j=(i++)+i;printf(“%d”,j);i=15;printf(“%d %d”,++i,i);} A.32 16 15 B.33 15 15 C.34 15 16 D.34 16 15 答案:A 14、若已定義 X和 Y為double 類型,則表達(dá)式:x=1,y=x+3/2 的值為()。A.1 B.2 C.2.0 D.2.5 答案:C 二、判斷題 1、在C 語(yǔ)言中,整型數(shù)據(jù)與字符型數(shù)據(jù)在任何情況下都可以通用。() 答案:錯(cuò)誤 2、在C 語(yǔ)言程序中,AHP 和 ahp 分別代表兩個(gè)不同的標(biāo)識(shí)符。() 答案:正確 3、在C 語(yǔ)言中,int、char和 short 三種類型數(shù)據(jù)在內(nèi)存中所占用的字節(jié)數(shù)都是由用戶自 己定義的。() 答案:錯(cuò)誤 4、在 C 程序中一行內(nèi)可以寫(xiě)幾個(gè)語(yǔ)句,一個(gè)語(yǔ)句可以分寫(xiě)在多行上。因此,并不是每一條 C 語(yǔ)句都必須有一個(gè)分號(hào)的。() 答案:錯(cuò)誤 5、在 C 語(yǔ)言程序中,happy是正確的標(biāo)識(shí)符。() 答案:正確 6、標(biāo)準(zhǔn)格式輸入函數(shù)scanf()可以從鍵盤(pán)上接收不同數(shù)據(jù)類型的數(shù)據(jù)項(xiàng)。()答案:正確 7、浮點(diǎn)型常量的指數(shù)表示中 ,e 是可以省略的。()答案:錯(cuò)誤 第四章 最簡(jiǎn)單的C程序設(shè)計(jì)——順序程序設(shè)計(jì) 一、單項(xiàng)選擇題 1、C 語(yǔ)言中調(diào)用 printf 進(jìn)行輸出時(shí)需要注意,在格式控制串中,格式說(shuō)明與輸出項(xiàng)的個(gè)數(shù)必須相同,如果格式說(shuō)明的個(gè)數(shù)小于輸出項(xiàng)的個(gè)數(shù),多余的輸出項(xiàng)將()。A.不予輸出 B.輸出空格 C.照樣輸出 D.輸出不定值或 0 答案:A 2、為了表示關(guān)系 x>=y>=z,應(yīng)使用C 語(yǔ)言表達(dá)式()。A.(x>=y)&&(y>=z)B.(x>=y)AND(y>=z)C.(x>=y>=z)D.(x>=y)&(y>=z)答案:A 3、若已定義 int a=25,b=14,c=19;以下三項(xiàng)運(yùn)算符(?:)所構(gòu)成的語(yǔ)句的執(zhí)行結(jié)果是()。a++<=25&&b--<=2&&c++?printf(“***a=%d,b=%d,c=%dn”,a,b,c):printf(“###a=%d,b=%d,c=%dn”,a,b,c)A.(***a=25,b=14,c=19)B.(***a=26,b=13,c=19)C.(###a=25,b=14,c=19)D.(###a=26,b=13,c=19)答案:D 4、以下程序的輸出結(jié)果是()。main(){ int i=010,j=10,k=0x10;printf(“%d,%d,%dn”,i,j,k);} A.8,10,16 B.8,10,10 C.10,10,10 D.10,10,16 答案:A 5、以下程序的輸出結(jié)果是()。#include 6、以下程序的輸出結(jié)果是()。main(){ char c1='6',c2='0';printf(“%c,%c,%d,%dn”,c1,c2,c1-c2,c1+c2);} A.因輸出格式不合法,輸出出錯(cuò)信息 B.6,0,6,102 C.6,0,7,6 D.6,0,5,7 答案:B 7、設(shè)有如下定義:int x=10,y=3,z;則語(yǔ)句 printf(“%dn”,z=(x%y,x/y));輸出結(jié)果是()。 A.3 B.0 C.4 D.1 答案:A 8、以下程序的輸出結(jié)果是()。main(){ int x=10,y=10;printf(“%d %dn”,x--,--y);} A.10 10 B.9 9 C.9 10 D.10 9 答案:D 9、下面程序的輸出結(jié)果()。main(){ int x;x=-3+4*5-6;printf(“%d”,x);x=3+4%5-6;printf(“%d”,x);x=-3*4%6/5;printf(“%d”,x);x=(7+6)%5/2;printf(“%d”,x);} A.11 1 0 1 B.11-3 2 1 C.12-3 2 1 D.11 1 2 1 答案:A 10、以下程序的輸出結(jié)果是()。main(){ int a=-1,b=4,k;k=(++a<=0)&&!(b--<=0);printf(“%d %d %d”,k,a,b);} A.1 0 4 B.0 0 4 C.1 0 3 D.0 0 3 答案:C 二、判斷題 1、C 程序有三種結(jié)構(gòu)化程序設(shè)計(jì)方法,分別順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。() 答案:正確 2、程序是按書(shū)寫(xiě)的順序執(zhí)行的。() 答案:錯(cuò)誤 3、如果要想在滿足條件時(shí)執(zhí)行一組(多個(gè))語(yǔ)句,則必須把這一組語(yǔ)句用{}括起來(lái)組成一個(gè)復(fù)合語(yǔ)句。()答案:正確 第五章 選擇結(jié)構(gòu)的程序設(shè)計(jì) 一、單項(xiàng)選擇題 1、分析以下程序: main(){ int x=5,a=0,b=0;if(x=a+b)printf(“** **n”);else printf(“## ##n”);以上程序()。 A.有語(yǔ)法錯(cuò),不能通過(guò)編譯 B.通過(guò)編譯,但不能連接 C.輸出** ** D.輸出## ## 答案:D 2、兩次運(yùn)行下面的程序,如果從鍵盤(pán)上分別輸入 6 和4,則輸出結(jié)果是()。main(){ int x;scanf(“%d”,&x);if(x++>5)printf(“%d”,x);else printf(“%dn”,x--); } A.7 和 5 B.6 和 3 C.7 和4 D.6和 4 答案:A 3、在C 的 if語(yǔ)句中,可用作判斷的表達(dá)式是()。 A.關(guān)系表達(dá)式 B.邏輯表達(dá)式 C.算術(shù)表達(dá)式 D.任意表達(dá)式 答案:D 4、假定所有變量均已正確說(shuō)明,下列程序段運(yùn)行后 x 的值是()。a=b=c=0;x=35;if(!a)x=-1;else if(b);if(c)x=3;else x=4;A.34 B.4 C.35 D.3 答案:B 5、若有以下變量定義: float x;int a,b;則正確的 switch 語(yǔ)句是()。A.switch(x){ case 1.0:printf(“*n”);case 2.0:printf(“* *n”);} B.switch(x){ case 1,2:printf(“*n”);case 3:printf(“* *n”);} C.switch(a+b){ case 1:printf(“*n”);case 2*a:printf(“* *n”);} D.switch(a+b){ case 1:printf(“*n”);case 1+2:printf(“* *n”);} 答案:D 6、在 C 語(yǔ)言中,多分支選擇結(jié)構(gòu)語(yǔ)句為 switch(c) { case 常量表達(dá)式 1:語(yǔ)句 1; ?? case 常量表達(dá)式 n-1:語(yǔ)句 n-1; default 語(yǔ)句 n;} 其中括號(hào)內(nèi)表達(dá)式 c 的類型()。 A.可以是任意類型 B.只能為整型 C.可以是整型或字符型 D.可以為整型或?qū)嵭?答案:C 7、當(dāng) a = 1, b = 3 , c = 5, d = 4時(shí), 執(zhí)行完下面程序段后 x的值為()if(a < b) 。if(c < d)x = 1;else if(a < c)if(b < d)x =2;else x = 3;else x = 6;else x = 7;A.1 B.2 C.3 D.6 答案:A 二、判斷題 1、條件表達(dá)式不能取代一般if的語(yǔ)句。()答案:錯(cuò)誤 2、在 if語(yǔ)句中,if子句與 else 子句都可以單獨(dú)使用,構(gòu)成了 if語(yǔ)句的兩種缺省形式。()答案: 錯(cuò)誤 3、在C語(yǔ)言中,逗號(hào)既可以作為運(yùn)算符,也可以作為分隔符。()答案:正確 4、在 if語(yǔ)句中,不可以沒(méi)有 else 子句。() 答案:錯(cuò)誤 5、在switch語(yǔ)句中,每一個(gè)的case常量表達(dá)式的值可以相同。()答案:錯(cuò)誤 6、在C 語(yǔ)言的 if語(yǔ)句中,用作條件判斷的表達(dá)式只能是關(guān)系和邏輯表達(dá)式。() 答案:錯(cuò)誤 7、在C 語(yǔ)言中 break 和 continue 都是循環(huán)中途退出語(yǔ)句,其中 break 語(yǔ)句用來(lái)跳出一層循環(huán)結(jié)構(gòu);continue 語(yǔ)句用來(lái)結(jié)束一次循環(huán)。() 答案:正確 第六章 循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 一、單項(xiàng)選擇題 1、while 循環(huán)語(yǔ)句中,while 后一對(duì)圓括號(hào)中表達(dá)式的值決定了循環(huán)體是否進(jìn)行,因此,進(jìn)入 while 循環(huán)后,一定有能使此表達(dá)式的值變?yōu)?),否則,循環(huán)將會(huì)無(wú)限制地進(jìn)行下去。 A.0 B.1 C.成立 D.2 答案:A 2、在 do-while 循環(huán)中,循環(huán)由 do 開(kāi)始,用 while 結(jié)束,必須注意的是:在 while表達(dá)式后面的()不能丟,它表示 do-while 語(yǔ)句的結(jié)束。A.0 B.1 C.; D.,答案:C 3、for 語(yǔ)句中的表達(dá)式可以部分或全部省略,但兩個(gè)()不可省略。但當(dāng)三個(gè)表達(dá)式均省略后,因缺少條件判斷,循環(huán)會(huì)無(wú)限制地執(zhí)行下去,形成死循環(huán)。A.0 B.1 C.; D.,答案:C 4、程序段如下 int k=1;while(!k==0){k=k+1;printf(“%dn”,k);} 說(shuō)法正確的是()。 A.while 循環(huán)執(zhí)行 2 次 B.循環(huán)是無(wú)限循環(huán) C.循環(huán)體語(yǔ)句一次也不執(zhí)行 D.循環(huán)體語(yǔ)句執(zhí)行一次 答案:B 5、以下 for循環(huán)是()。 for(a=0,b=0;(b!=123)&&(a<=4);a++)A.無(wú)限循環(huán) B.循環(huán)次數(shù)不定 C.執(zhí)行 4次 D.執(zhí)行 5 次 答案:D 6、在下列程序中,while的循環(huán)次數(shù)是()。main(){ int i=0;while(i<10){if(i<1)continue;if(i= =5)break;i++;}......} A.1 B.10 C.6 D.死循環(huán)、不能確定次數(shù) 答案:D 7、執(zhí)行下面的程序后,a 的值為()。main(){int a,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1){b+=3;continue;} b-=5;} } A.7 B.8 C.9 D.10 答案:B 8、以下程序的輸出結(jié)果()。main(){ int x=3;do {printf(“%3d”,x-=2);}while(--x);} A.1 B.3 0 C.1-2 D.答案:A 9、以下能正確計(jì)算 1×2×3×?×10的程序段是()A.do {i=1;s=1;s=s*i;i++;} while(i<=10);B.do {i=1;s=0;s=s*i;i++;} while(i<=10);C.i=1;s=1;do {s=s*i;i++;} while(i<=10); 死循環(huán)。D.i=1;s=0;do {s=s*i;i++;} while(i<=10);答案:C 10、下面有關(guān) for循環(huán)的正確描述是()。A.for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況 B.for循環(huán)是先執(zhí)行循環(huán)體語(yǔ)句,后判斷表達(dá)式 C.在 for循環(huán)中,不能用 break 語(yǔ)句跳出循環(huán)體 D.for循環(huán)的循環(huán)體語(yǔ)句中,可以包含多條語(yǔ)句,但必須用花括號(hào)括起來(lái) 答案:D 二、判斷題 1、do-while循環(huán)的while后的分號(hào)可以省略。()答案:錯(cuò)誤 2、在多層循環(huán)中, 一個(gè)break語(yǔ)句只向外跳一層。() 答案:正確 3、do-while循環(huán)至少要執(zhí)行一次循環(huán)語(yǔ)句。()答案:正確 4、C語(yǔ)言中while和do-while循環(huán)的主要區(qū)別是while語(yǔ)句的循環(huán)體至少會(huì)被執(zhí)行一次,而 do-while語(yǔ)句的循環(huán)體則可能一次也不執(zhí)行。() 答案:錯(cuò)誤 5、for語(yǔ)句作為循環(huán)控制語(yǔ)句時(shí),其括號(hào)內(nèi)各個(gè)表達(dá)式及其后的分號(hào)都可缺省。() 答案: 錯(cuò)誤 6、C語(yǔ)言的三種循環(huán)不可以互相嵌套。()答案:錯(cuò)誤 7、continue 只能用于循環(huán)體中。()答案:正確 第七章 數(shù)組 一、單項(xiàng)選擇題 1、定義如下變量和數(shù)組: int i;int x[3][3]={1,2,3,4,5,6,7,8,9};則下面執(zhí)行語(yǔ)句的結(jié)果為()。for(i=0;i<3;i++)printf(“%3d”,x[i][2-i]);A.1 5 9 B.1 4 7 C.3 5 7 D.3 6 9 答案:C 2、在C 語(yǔ)言中,引用數(shù)組元素時(shí),其數(shù)組下標(biāo)的數(shù)據(jù)類型允許是()。A.整型常量 B.整型常量或整型表達(dá)式 C.整型表達(dá)式 D.任何類型的表達(dá)式 答案:B 3、以下對(duì)一維整型數(shù)組 a的正確說(shuō)明是()。 A.int a(10);B.int n;scanf(“%d”,&n);int a[n];C.int n=10,a[n];D.#define SIZE 10 int a[SIZE];答案:D 4、若有說(shuō)明語(yǔ)句:char c= ‘64’;則變量 C 包含()。A.1 個(gè)字符 B.2 個(gè)字符 C.3 個(gè)字符 D.說(shuō)明不合法,C 值不確定。答案:A 5、判斷字符串a(chǎn)和b是否相等,應(yīng)當(dāng)使用()。 A.if(a= =b)B.if(a=b)C.if(strcpy(a,b))D.if(strcmp(a,b))答案:D 6、下面程序的運(yùn)行結(jié)果是()。main(){ int a[6],i;for(i=1;i<6;i++){ a[i]=9*(i-2+4*(i>3))%5;printf(“%2d”,a[i]);} } A.-4 0 4 0 4 B.-4 0 4 0 3 C.-4 0 4 4 3 D.-4 0 4 4 0 答案:C 7、若有說(shuō)明:int a[3][4] = {0};則下面正確的敘述是()。A.只有元素 a[0][0]可以得到初值 0 B.此說(shuō)明語(yǔ)句不正確 C.數(shù)組 a 中每個(gè)元素均可得到初值 0 D.數(shù)組 a 每個(gè)元素均可得到初值,但值不一定為 0 答案:C 8、下面幾個(gè)字符串處理表達(dá)式中能用來(lái)把字符串str2復(fù)制到字符串str1后的是()。A.strcat(str1,str2);B.strcat(str2,str1);C.strcpy(str1,str2);D.strcmp(str1,str2);答案:C 9、若有二維數(shù)組 a[m][n],則數(shù)組中 a[i][j]之前的元素的個(gè)數(shù)為()。A.j*m+i B.i*n+j C.i*m+j+1 D.i*n+j+1 答案:D 10、設(shè)有 char str[10],下列語(yǔ)句正確的是()。A.scanf(“%s”,&str);B.printf(“%c”,str);C.printf(“%s”,str[0]);D.printf(“%s”,str);答案:D 二、判斷題 1、字符串可以用來(lái)給數(shù)組賦值,在 C 程序的執(zhí)行語(yǔ)句中可以直接用字符串給數(shù)組名賦值。 () 答案:錯(cuò)誤 2、數(shù)組名也可作為函數(shù)參數(shù)使用,此時(shí)數(shù)組名代表數(shù)組的起始地址。() 答案:正確 3、數(shù)組在定義時(shí)沒(méi)有必要指定數(shù)組的長(zhǎng)度,其長(zhǎng)度可以在程序中根據(jù)元素個(gè)數(shù)再?zèng)Q定。() 答案:錯(cuò)誤 4、數(shù)組首地址不僅能通過(guò)數(shù)組中第一個(gè)元素的地址表示,也可以通過(guò)數(shù)組名來(lái)表示。() 答案:正確 5、C 語(yǔ)言中 , 字符串常量存放在字符數(shù)組中要有一個(gè)結(jié)束符 , 該結(jié)束符是0。()答案:錯(cuò)誤 6、在對(duì)數(shù)組全部元素賦初值時(shí),不可以省略行數(shù),但能省略列數(shù)。()答案:錯(cuò)誤 7、數(shù)組名能與其它變量名相同,數(shù)組名后是用方括號(hào)括起來(lái)的常量表達(dá)式,不能用圓括號(hào)。()答案:正確 第八章 函數(shù) 一、單項(xiàng)選擇題 1、以下函數(shù)定義正確的是()。 A.double fun(int x, int y)B.double fun(int x;int y)C.double fun(int x, int y);D.double fun(int x , y)答案:A 2、C 語(yǔ)言規(guī)定,簡(jiǎn)單變量作實(shí)參,它與對(duì)應(yīng)形參之間的數(shù)據(jù)傳遞方式是()。A.地址傳遞 B.單向值傳遞 C.雙向值傳遞 D.由用戶指定傳遞方式 答案:B 3、以下關(guān)于C語(yǔ)言程序中函數(shù)的說(shuō)法正確的是()。A.函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套; B.函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套; C.函數(shù)的定義和調(diào)用均不可以嵌套; D.函數(shù)的定義和點(diǎn)用都可以嵌套。答案:B 4、一個(gè)數(shù)據(jù)類型為 void 的函數(shù)中可以沒(méi)有 return 語(yǔ)句,那么函數(shù)的被調(diào)用時(shí)()A.沒(méi)有返回值 B.返回一個(gè)系統(tǒng)默認(rèn)值 C.返回值由用戶臨時(shí)決定 D.返回一個(gè)不確定的值 答案:D 5、以下說(shuō)法不正確的是()。 A.實(shí)參可以是常量、變量或表達(dá)式 B.形參可以是常量、變量或表達(dá)式 C.實(shí)參可以是任意類型 D.形參應(yīng)與其對(duì)應(yīng)的實(shí)參類型一致 答案:B 6、以下函數(shù)的功能是:通過(guò)鍵盤(pán)輸入數(shù)據(jù),為數(shù)組中的所有元素賦值。#define N 10 void arrin(int x[N]){ int i=0;while(i A.x+i B.&x[i+1] C.x+(i++)D.&x[++i] 答案:C 7、下列說(shuō)法正確的是()。 A.一個(gè)函數(shù)的函數(shù)體必須要有變量定義和執(zhí)行部分,二者缺一不可 B.一個(gè)函數(shù)的函數(shù)體必須要有執(zhí)行部分,可以沒(méi)有變量定義 C.一個(gè)函數(shù)的函數(shù)體可以沒(méi)有變量定義和執(zhí)行部分,函數(shù)可以是空函數(shù) D.以上都不對(duì) 答案:C。 8、若用數(shù)組名作為函數(shù)調(diào)用的實(shí)參,傳遞給形參的是()。A.數(shù)組的首地址 B.數(shù)組第一個(gè)元素的值 C.數(shù)組中全部元素的值 D.數(shù)組元素的個(gè)數(shù) 答案:A 9、如果在一個(gè)函數(shù)中的復(fù)合語(yǔ)句中定義了一個(gè)變量,則該變量()。A.只在該復(fù)合語(yǔ)句中有效 B.在該函數(shù)中有效 C.在本程序范圍內(nèi)有效 D.為非法變量 答案:A 10、有以下程序 void f(int x,int y){ int t;if(x A.3,4,5 B.5,3,4 C.5,4,3 D.4,3,5 答案:C 二、判斷題 1、C 程序可以由若干個(gè)源文件組成,因此最小的功能單位是源文件,最小編譯單位的是函數(shù)。() 答案:錯(cuò)誤 2、C 程序中函數(shù)不可以嵌套定義但可以嵌套調(diào)用。()答案: 正確 3、在函數(shù)內(nèi)的復(fù)合語(yǔ)句中定義的變量在本函數(shù)范圍內(nèi)有效。() 答案:錯(cuò)誤 4、C 語(yǔ)言規(guī)定,簡(jiǎn)單變量做實(shí)參時(shí),與其對(duì)應(yīng)的形參之間是單向的值傳遞。()答案: 正確 5、數(shù)組名也可作為函數(shù)參數(shù)使用,此時(shí)是地址傳遞。() 答案:正確 6、C 語(yǔ)言本身沒(méi)有輸入輸出語(yǔ)句,輸入輸出操作都是通過(guò)調(diào)用庫(kù)函數(shù)來(lái)實(shí)現(xiàn)的。() 答案:正確 7、函數(shù)形參的存儲(chǔ)單元是動(dòng)態(tài)分配的。()答案:正確 第九章 預(yù)處理命令 一、單項(xiàng)選擇題 1、C 語(yǔ)言中,宏定義有效范圍從定義處開(kāi)始,到源文件結(jié)束處結(jié)束,但可以用()來(lái)提前解除宏定義的作用。 A.# ifdef B.endif C.# undefine D.# undef 答案:D 2、以下不正確的敘述是()。 A.預(yù)處理命令都必須以“#”號(hào)開(kāi)始 B.在程序中凡是以“#”號(hào)開(kāi)始的語(yǔ)句行都是預(yù)處理命令行 C.C 語(yǔ)言在執(zhí)行過(guò)程中對(duì)預(yù)處理命令行進(jìn)行處理 D.# define ABCD是正確的宏定義 答案:C 3、在文件包含預(yù)處理語(yǔ)句(# include)的使用形式中,當(dāng)之后的文件名用“”(雙引號(hào))括起時(shí),尋找被包含文件的方式是()。A.直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄 B.先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索 C.僅僅搜索源程序所在目錄 D.僅僅搜索當(dāng)前目錄 答案:B 二、判斷題 1、預(yù)處理命令的前面必須加一個(gè)“#”號(hào)。()答案:正確 2、宏替換不占用運(yùn)行時(shí)間。()答案:正確 3、C語(yǔ)言的編譯系統(tǒng)對(duì)宏命令的處理是在對(duì)源程序中其它語(yǔ)句正式編譯之前進(jìn)行的。()答案:正確 第十章 指針 一、單項(xiàng)選擇題 1、變量的指針,其含義是指該變量的。 A.值 B.地址 C.名 D.一個(gè)標(biāo)志 答案:B 2、設(shè)有說(shuō)明 int(*ptr)[M];其中 ptr是()。A.M 個(gè)指向整型變量的指針 B.指向 M 個(gè)整型變量的函數(shù)指針 C.一個(gè)指向具有 M 個(gè)整型元素的一維數(shù)組的指針 D.具有 M 個(gè)指針元素的一維指針數(shù)組,每個(gè)元素都只能指向整型量 答案:C 3、如下程序的執(zhí)行結(jié)果是()。# include 4、若有以下定義,則對(duì) a數(shù)組元素的正確引用是()。int a[5], *p=a;A.*&a[5] B.a+2 C.*(p+5)D.*(a+2)答案:D 5、若有定義: int a[2][3];則對(duì) a 數(shù)組的第i行第j列(假設(shè) i,j 已正確說(shuō)明并賦值)元素值的正確引用為()。 A.*(*(a +i)+j)B.(a+i)[j] C.*(a+i+j)D.*(a +i)+j 答案:A 6、設(shè)有下面的程序段: char s[ ]=“china”;char *p;p=s;則下列敘述正確的是()。A.s 和 p 完全相同 B.數(shù)組 s 中的內(nèi)容和指針變量 p 中的內(nèi)容相等 C.s 數(shù)組長(zhǎng)度和 p 所指向的字符串長(zhǎng)度相等 D.*p與s[0]相等 答案:D 7、若有下列說(shuō)明和語(yǔ)句:int a[4][5],(*p)[5];p = a;則對(duì)a 數(shù)組元素的正確引用是()。 A.p+1 B.*(p+3)C.*(p+1)+3 D.*(*p+2)答案:B 二、判斷題 1、在定義指針型變量時(shí)指定的基類型為該指針變量所能指向的變量類型。() 答案:正確 2、指針變量,只能作為函數(shù)的形參,不可以作函數(shù)的實(shí)參。()答案:正確 3、由于指針變量存儲(chǔ)的是地址,指針變量被定義之后可以指向任一類型的變量。() 答案:錯(cuò)誤 第十一章 文件 一、單項(xiàng)選擇題 1、若用 fopen()函數(shù)打開(kāi)一個(gè)新的二進(jìn)制文件,該文件可以讀也可以寫(xiě),則文件打開(kāi)模式是()。 A.“ab+” B.“wb+” C.“rb+” D.“ab” 答案:B 2、若 fp 是指向某文件的指針,且已讀到此文件末尾,則庫(kù)函數(shù)feof(fp)的返回值是()。A.EOF B.0 C.非零值 D.NULL 答案:C 3、以下敘述中不正確的是()。 A.C 語(yǔ)言中的文本文件以 ASCII 碼形式存儲(chǔ)數(shù)據(jù) B.C 語(yǔ)言中對(duì)二進(jìn)制位的訪問(wèn)速度比文本文件快 C.C 語(yǔ)言中,隨機(jī)讀寫(xiě)方式不使用于文本文件 D.C 語(yǔ)言中,順序讀寫(xiě)方式不使用于二進(jìn)制文件 答案:D 二、判斷題 1、文件指針用于指向文件,文件只有被打開(kāi)后才有對(duì)應(yīng)的文件指針。(答案:正確 2、文件指針和位置指針都是隨著文件的讀寫(xiě)操作在不斷改變。() 答案:錯(cuò)誤 3、以“r”方式打開(kāi)一個(gè)文件時(shí),文件指針指向文件首。()答案: 正確) 1、C語(yǔ)言程序常見(jiàn)的書(shū)寫(xiě)格式; 2、printf()和scanf()函數(shù)常用的方法,主要包括格式控制符; 3、常見(jiàn)的基本類型(現(xiàn)學(xué)過(guò)3種)以及表示數(shù)據(jù)的范圍(大致的)。 4、熟練掌握以下幾類運(yùn)算符的運(yùn)算規(guī)律:算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、條件運(yùn) 算符、自增自減運(yùn)算符、逗號(hào)運(yùn)算符、簡(jiǎn)單賦值運(yùn)算符以及復(fù)合的賦值運(yùn)算符。 5、C程序三種結(jié)構(gòu)。 6、數(shù)組(主要是字符和一維)定義、初始化以及引用和函數(shù)的定義、以及引用。 7、常見(jiàn)的數(shù)組字符串處理函數(shù)(包括stccpy()和strcmp())。 8、常見(jiàn)的轉(zhuǎn)義字符的表示及含義作用(如nrtb
第二篇:C語(yǔ)言考試復(fù)習(xí)要點(diǎn)
第三篇:C語(yǔ)言考試
第四篇:C語(yǔ)言復(fù)習(xí)大綱