國家開放大學《C語言程序設(shè)計》形考任務(wù)1-4參考答案_第1頁
國家開放大學《C語言程序設(shè)計》形考任務(wù)1-4參考答案_第2頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、國家開放大學C語言程序設(shè)計形考任務(wù)1-4參考答案形考任務(wù)1一、選擇題(共40分,每小題2分)1.在每個C語言程序中都必須包含有這樣一個函數(shù),該函數(shù)的函數(shù)名為()。A. mainB. MAINC. nameD. function2.C語言源程序文件的缺省擴展名為()。A. cppB. exeC. objD. c3.由C語言目標文件連接而成的可執(zhí)行文件的缺省擴展名為()。A. cppB. exeC. objD. c4.程序運行中需要從鍵盤上輸入多于一個數(shù)據(jù)時,各數(shù)據(jù)之間應(yīng)使用的分隔符為()。A. 空格或逗號B. 逗號或回車C. 逗號或分號D. 空格或回車5.每個C語言程序文件的編譯錯誤被分為()。

2、A. 1類B. 2類C. 3類D. 4類6.不符合C語言規(guī)定的復合語句是()。A. B. ;C. x=0;D. y=107.C語言程序中的基本功能模塊為()。A. 表達式B. 標識符C. 語句D. 函數(shù)8.在一個函數(shù)定義中,函數(shù)頭包括的3個部分依次為函數(shù)類型、函數(shù)名和()。A. 表達式B. 語句C. 參數(shù)表D. 函數(shù)體9.在一個程序文件中,若要使用#include命令包含一個用戶定義的頭文件,則此頭文件所使用的起止定界符為一對()。A. 尖括號B. 雙引號C. 單引號D. 花括號10.在C語言程序中,多行注釋語句使用的開始標記符為()。A. /B. /*C. */D. *11.在printf(

3、)函數(shù)調(diào)用的格式字符串中,若使用格式符為“%c”,則對應(yīng)輸出的數(shù)據(jù)類型為()。A. charB. intC. floatD. double12.在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%5d”,則規(guī)定對應(yīng)輸出的數(shù)據(jù)占用的字符位置個數(shù)為()。A. 5B. 4C. 3D. 613.轉(zhuǎn)義字符''表示的字符是()。A. 單引號B. 雙引號C. 反斜線D. 問號14.枚舉類型中的每個枚舉常量的值都是一個()。A. 整數(shù)B. 浮點數(shù)C. 字符D. 邏輯值15.運算符優(yōu)先級最高的是()。A. =B. *=C. &&D. !=16.設(shè)x和y均為邏輯值,則x &

4、amp;& y為真的條件是()。A. 它們均為真B. 其中一個為真C. 它們均為假D. 其中一個為假17.設(shè)有語句“int a=12; a+=a*a;”,則執(zhí)行結(jié)束后,a的值為()。A. 12B. 144C. 156D. 28818.x>0 && x<=10的相反表達式為()。A. x<=0 | x>10B. x<=0 && x>10C. x<=0 | x<=10D. x>0 && x>1019.字符串“a+b=12n”的長度為()。A. 6B. 7C. 8D. 920.在下列的

5、符號常量定義中,錯誤的定義語句格式為()。A. const int M1=10;B. const int M2=20;C. const int M3 10;D. const char mark='3'二、判斷題(共60分,每小題2分。敘述正確則回答“是”,否則回答“否”)21.C語言中的每條簡單語句以分號作為結(jié)束符。()22.C語言中的每條復合語句以花括號作為結(jié)束符。(×)23.在C語言程序中,在行尾使用注釋的開始標記符為一對單斜線字符。()24.注釋內(nèi)容的開始所使用的標記符為/*,則注釋內(nèi)容的結(jié)束所使用的標記符為*/。()25.在一個C語言程序文件中,若要包含一個頭

6、文件,則使用以百分號開始的預處理命令。(×)26.于輸出表達式值的標準輸出函數(shù)是printf()。()27.當不需要函數(shù)返回任何值時,則需要使用保留字void作為函數(shù)的返回值類型。()28.每個C程序文件在編譯時可能出現(xiàn)有警告性錯誤,其對應(yīng)的標識符為error。(×)29.十進制數(shù)25表示成符合C語言規(guī)則的八進制數(shù)為31。(×)30.十進制數(shù)25表示成符合C語言規(guī)則的十六進制數(shù)為0x19。()31.在C語言中,轉(zhuǎn)義字符'n'表示一個換行符。()32.執(zhí)行“printf("%c",'F'-2);”語句后得到的輸出結(jié)

7、果為H。(×)33.已知字符'C'的ASCII碼為67,當執(zhí)行“int x='C'+5;”語句后x的值為72。()34.假定一個枚舉類型的定義為“enum RBab,ac=3,ad,aex=ad;”,則x的值為2。(×)35.float的類型長度為8。(×)36.在C語言中,常數(shù)28和3.26具有相同的數(shù)據(jù)類型。(×)37.若需要定義一個符號常量,并且使C語言能夠進行類型檢查,則應(yīng)在定義語句的開始使用保留字const。()38.使用const語句定義一個符號常量時,不必對它進行初始化。(×)39.表達式45%13

8、的值為3。(×)40.假定x=5,則表達式2*x+的值為12。(×)41.表達式(float)25/4的值為6。(×)42.表達式x=x+1表示成增量表達式為+x。()43.關(guān)系表達式(x!=0)的等價表達式為(x)。 ()44.關(guān)系表達式x+y>5的相反表達式為x+y<=5。()45.邏輯表達式(a>b | b=5)的相反表達式為(a>b && b=5)。(×)46.若x=5,y=10,則x>y邏輯值為真。(×)47.假定x=5,則執(zhí)行“a=(x?10:20);”語句后a的值為10。()48.帶有

9、隨機函數(shù)的表達式rand()%20的值所在的區(qū)間范圍是019。()49.假定x=5,則執(zhí)行“y=x+;”語句后,x的值為5。(×)50.假定x=5,則執(zhí)行“y=+x;”語句后,y的值為6。()形考任務(wù)2一、選擇題(共20分,每小題2分)1.當處理特定問題時的循環(huán)次數(shù)已知時,通常采用的語句是( )。a. forb. whilec. do-whiled. switch2.在switch語句的每個case塊中,假定都是以break語句結(jié)束的,則此switch語句容易被改寫成的語句是( )。a. forb. ifc. dod. while3.for語句能夠被改寫成的語句是( )。a. 復合b

10、. ifc. switchd. while4.下面循環(huán)語句執(zhí)行結(jié)束后輸出的i值為( )。for(int i=0; i<n; i+) if(i>n/2) cout<<i<<endl; break;a. n/2b. n/2+1c. n/2-1d. n-15.在下面循環(huán)語句中,內(nèi)層循環(huán)體S語句的執(zhí)行總次數(shù)為( )。for(int i=0; i<n; i+) for(int j=i; j<n; j+) S;a. n2b. (n+1)/2c. n(n-1)/2d. n(n+1)/26.在下面的do循環(huán)語句中,其循環(huán)體被執(zhí)行的次數(shù)為( )。int i=0;

11、do i+; while(i*i<10);a. 4b. 3c. 5d. 27.在下面的一維數(shù)組定義中,有語法錯誤的選項是( )。a. int a=1,2,3;b. int a10=0;c. int a;d. int a5;8.在下面的二維數(shù)組定義中,語法正確的選項是( )。a. int a5;b. int a5;c. int a3=1,3,5,2;d. int a(10);9.假定一個二維數(shù)組的定義語句為“int a34=3,4,2,8,6;”,則元素a11的值為( )。a. 2b. 4c. 6d. 810.假定一個二維數(shù)組的定義語句為“int a34=3,4,2,8,6;”,則元素a2

12、1的值為( )。a. 0b. 4c. 8d. 6二、判斷題(共20分,每小題1分。敘述正確則回答“是”,否則回答“否”)11.在執(zhí)行“typedef int DataType;”語句后,標識符DataType與保留字int具有完全相同的含義和作用。()12.在switch語句中,每個case和冒號之間的表達式只能是常量。()13.為了結(jié)束本層循環(huán)類語句或switch語句的執(zhí)行過程,在語句體中需要使用break語句。()14.在程序中執(zhí)行到break語句時,將結(jié)束所在函數(shù)的執(zhí)行過程,返回到調(diào)用該函數(shù)的位置。(×)15.在程序執(zhí)行完成任一個函數(shù)調(diào)用后,將結(jié)束整個程序的執(zhí)行過程,返回到操作

13、系統(tǒng)或C語言集成開發(fā)環(huán)境界面窗口。(×)16.假定一維數(shù)組的定義為“char* a8;”,則該數(shù)組所含元素的個數(shù)大于8。(×)17.假定二維數(shù)組的定義為“int a35;”,則該數(shù)組所占存儲空間的字節(jié)數(shù)為60。()18.假定二維數(shù)組的定義為“char aMN;”,則該數(shù)組所含元素的個數(shù)為M+N。(×)19.假定二維數(shù)組的定義為“double aMN;”,則每個數(shù)組元素的行下標取值范圍在0M-1之間。()20.假定二維數(shù)組的定義為“double aMN;”,則每個數(shù)組元素的列下標取值范圍在0N之間。(×)21.存儲一個空字符串需要占用0個字節(jié)的存儲空間。(

14、×)22.使用“typedef char BB1050;”語句定義標識符BB為含有10行50列的二維字符數(shù)組類型。()23.存儲字符'a'需要占用1個字節(jié)的存儲空間。()24.空字符串的長度為1。(×)25.字符串"a:xxk數(shù)據(jù)"的長度為13。(×)26.為了存儲一個長度為n的字符串,所使用的字符數(shù)組的長度至少為n+1。()27.strcmp函數(shù)用于進行兩個字符串之間的比較。()28.strcpy函數(shù)用于把一個字符串拷貝到另一個字符數(shù)組空間中。()29.一個二維字符數(shù)組a1020能夠最多存儲9個字符串。(×)30.一

15、個二維字符數(shù)組a1020能夠存儲的每個字符串的長度不超過20。(×)三、填空題:寫出下列每個程序運行后的輸出結(jié)果(共40分,每小題4分)31.#include<stdio.h> void main() int x=5; switch(2*x-3) case 4: printf("%d ",x); case 7: printf("%d ",2*x+1); case 10: printf("%d ",3*x-1); break; default: printf("%s","default

16、n"); 答案:11 1432.#include<stdio.h> void main() int i,s=0; for(i=1;i<=5;i+) s+=i*i; printf("s=%dn",s); 答案:s=5533.#include<stdio.h> void main() int i, s1=0, s2=0; for(i=0;i<10;i+) if(i%2) s1+=i; else s2+=i; printf("%d %dn",s1,s2); 答案:25 2034.#include<stdio.

17、h> void main() int n=6,y=1; while(n) y*=n-; printf("y=%dn",y); 答案:y=72035.#include<stdio.h> const int M=20; void main() int i,c2,c3,c5; c2=c3=c5=0; for(i=1; i<=M; i+) if(i%2=0) c2+; if(i%3=0) c3+; if(i%5=0) c5+; printf("%d %d %dn",c2,c3,c5); 答案:10 6 436.#include<st

18、dio.h> void main() int i,s; for(i=1,s=0;i<10;i+) if(i%3=0) continue; s+=i; printf("%dn",s); 答案:2737.#include<stdio.h> void main() int a8=12,39,26,41,55,63,72,40; int i, i1=0, i2=0; for(i=0;i<8;i+) if(ai%2=1) i1+; else i2+; printf("%d %dn",i1,i2); 答案:4 438.#include&

19、lt;stdio.h> int a10=4,5,6,15,20,13,12,7,8,9; void main() int i,s4=0; for(i=0; i<10; i+) switch(ai%4) case 0: s0+=ai;break; case 1: s1+=ai;break; case 2: s2+=ai;break; default: s3+=ai;break; for(i=0; i<4; i+) printf("%d ",si); 答案:44 27 6 2239.#include<stdio.h> void main() cha

20、r a="abcdbfbgacd" int i1=0, i2=0, i=0; while(ai) if(ai='a') i1+; if(ai='b') i2+; i+; printf("%d %d %dn",i1,i2,i); 答案:2 3 1140.#include<stdio.h> void main() int a34=1,2,7,8,5,6,10,6,9,12,3,4; int m=a00; int i,j; for(i=0; i<3; i+) for(j=0; j<4; j+) if(ai

21、j>m) m=aij; printf("%dn",m); 答案:12四、簡答題:根據(jù)下列每個題目要求編寫程序(共20分,每小題4分)41.編寫一個函數(shù),函數(shù)頭格式為“double Mean(double aMN,int m,int n)”,要求返回二維數(shù)組amn中所有元素的平均值,假定在計算過程中采用變量v存放平均值。參考答案:double Mean(double aMN,int m,int n) int i,j; double v=0.0; for(i=0; i<m; i+) for(j=0; j<n; j+) v+=aij; v/=m*n; retur

22、n v; 42.編寫一個遞歸函數(shù)“int FF(int a, int n)”,求出數(shù)組a中所有n個元素之積并返回。參考答案:int FF(int a, int n) if(n=1) return an-1; else return an-1*FF(a,n-1); 43.編寫一個主函數(shù),利用while循環(huán),求出并顯示滿足不等式的最小n值。參考答案:#include<stdio.h> void main() int i=0; double s=0; /或int i=1; double s=1; while(s<5) s+=(double)1/+i; printf("n=

23、%dn",i); 44.編寫一個主函數(shù),求出滿足不等式22+42+.+n2<1000的最大n值,假定分別用i和s作為取偶數(shù)值和累加值的變量,并限定使用do循環(huán)編程。參考答案:#include<stdio.h> void main() int i=0; /用i作為依次取值偶數(shù)的變量 int s=0; /用s作為累加變量 do i+=2; s+=i*i; while(s<1000); printf("n=%dn",i-2); 45.編寫一個主函數(shù),計算并輸出12+22+.+n2值,其中n值由鍵盤輸入。參考答案:#include<stdio

24、.h> void main() int i; /用i作為計數(shù)(循環(huán))變量 int s=0; /用s作為累加變量 int n; printf("輸入一個自然數(shù): "); scanf("%d",&n); for(i=1; i<=n; i+) s+=i*i; printf("s=%dn",s); 形考任務(wù)3一、選擇題(共30分,每小題2分)1.在下面的函數(shù)聲明語句中,存在著語法錯誤的是( )。a. AA(int a, int b)b. AA(int, int)c. AA(int a; int b)d. AA(int a,

25、 int)2.在下面的保留字中,不能作為函數(shù)的返回值類型的是( )。a. voidb. intc. enumd. long3.假定p是一個指向float型數(shù)據(jù)的指針,則p+1所指數(shù)據(jù)的地址比p所指數(shù)據(jù)的地址增加的字節(jié)數(shù)為( )。a. 1b. 2c. 4d. 84.假定a為一個數(shù)組名,在下面的表達式中,存在語法錯誤的是( )。a. aib. *a+c. *ad. *(a+1)5.用calloc函數(shù)創(chuàng)建具有10個整型元素的一維數(shù)組的正確語句是( )。a. int *p=calloc(10,2);b. int *p=calloc(10);c. int *p=calloc(10,4);d. int *

26、p=malloc(10)6.假定變量m定義為“int m=7;”,則下面正確的語句為( )。a. int p=&m;b. int *p=&m;c. int &p=*m;d. int *p=m;7.假定k是一個double類型的變量,則定義變量p的正確語句為( )。a. double p=&k;b. int *p=&k;c. double &p=*k;d. char *p="Thank you!"8.若有語句為“int a10, x, *pa=a;”,要把數(shù)組a中下標為3的元素值賦給x,則不正確的語句為( )。a. x=pa3;

27、b. x=*(a+3);c. x=a3;d. x=*pa+3;9.假定有語句為“int b10; int *pb;”,則下面不正確的賦值語句為( )。a. pb=b;b. pb=&b0;c. pb=b+2;d. pb=b5;10.已知“int *p=malloc(100);”,要釋放p所指向的動態(tài)內(nèi)存,正確的語句為( )。a. free(p);b. free p;c. free(*p);d. freep;11.在程序的一個文件中定義的函數(shù),若要在另一個文件中調(diào)用,則必須在這另一個文件中給出該函數(shù)的( )。a. 原型語句b. 參數(shù)表c. 函數(shù)名d. 返回類型12.假定一個函數(shù)定義為“st

28、atic int f1(int x,int y)return x+y;”,該函數(shù)名稱為( )。a. staticb. intc. f1d. return13.假定一個函數(shù)的原型語句為“int ff(int* x);”,一個整型數(shù)組為a10,則下面函數(shù)調(diào)用表達式不正確的是( )。a. ff(a)b. ff(a0)c. ff(a+3)d. ff(&a0)14.假定一個函數(shù)的數(shù)組參數(shù)說明為char a,與之等價的指針參數(shù)說明為( )。a. char ab. char* ac. char& ad. char*a15.假定一個函數(shù)的二維數(shù)組參數(shù)說明為char wN,與之等價的指針參數(shù)說明

29、為( )。a. char (*w)Nb. char *wNc. char (*w)Nd. char*a二、判斷題(共30分,每小題2分。敘述正確則回答“是”,否則回答“否”)16.在C語言中,一個函數(shù)由函數(shù)頭和函數(shù)體組成。()17.在函數(shù)模塊之外定義的變量稱為全局變量,若沒有被初始化則系統(tǒng)隱含對它賦初值0。()18.如果一個函數(shù)只允許同一程序文件中的函數(shù)調(diào)用,則不應(yīng)在該函數(shù)定義的開始前加上保留字static。(×)19.如果在一個函數(shù)體中又出現(xiàn)對自身函數(shù)的調(diào)用,此種函數(shù)調(diào)用被稱為遞歸調(diào)用。()20.調(diào)用系統(tǒng)函數(shù)時,要先使用#include命令包含該系統(tǒng)函數(shù)的原型語句所在的系統(tǒng)頭文件。

30、()21.函數(shù)形參變量不屬于局部變量。(×)22.假定p所指對象的值為25,p+1所指對象的值為46,則*p+的值為46。(×)23.假定p所指對象的值為25,p+1所指對象的值為46,則*+p的值為25。(×)24.假定p所指對象的值為25,p+1所指對象的值為46,則執(zhí)行*(p+)運算后,p所指對象的值為46。()25.假定a是一個指針數(shù)組,則a+i所指對象的地址比a地址大4*i字節(jié)。()26.若要把一個整型指針p轉(zhuǎn)換為字符指針,則采用的強制轉(zhuǎn)換表達式為(char*)p。()27.假定一個數(shù)據(jù)對象為int*類型,則指向該對象的指針類型仍為int*類型。(

31、15;)28.假定x為一個簡單變量,則&x表示x的地址。()29.若p指向x,則*p與x的值不同。(×)30.NULL是一個符號常量,通常作為空指針值,它代表的值為0。()三、寫出下列每個程序運行后的輸出結(jié)果(共20分,每小題4分)31.#include<stdio.h> int WF(int x, int y) x=x+y; y=x+y; return x+y; void main() int x=5, y=7; int z=WF(x,y); printf("z=%dn",z); 答案:z=3132.#include<stdio.h&g

32、t; #include<string.h> void fun(char ss); void main( ) char s15="0123456789" fun(s); printf("%sn",s); void fun(char ss) int i, n=strlen(ss) ; for(i=0; i<n/2; i+) char c=ssi; ssi=ssn-1-i; ssn-1-i=c; 答案:987654321033.#include<stdio.h> int Count(int a, int n, int x) int

33、 i,c=0; for(i=0;i<n;i+) if(ai>x) c+; return c; void main() int a8=20,15,32,47,24,36,28,70; int b=Count(a,8,30); printf("b=%dn",b); 答案:B=434.#include<stdio.h> void main() int a8=3,5,7,9,2,3,4,8; int s=0,*p; for(p=a;p<a+8;) s+=*p+; printf("s=%dn",s); 答案:s=4135.#inclu

34、de<stdio.h> int LA(int *a, int n, int x) int i,s=0; for(i=0;i<n;i+) if(ai<x) s+=ai; return s; void main() int a8=5,10,15,8,12,3,9,20; int b=LA(a,5,10); int c=LA(a+2,6,10); printf("%d %dn",b,c); 答案:13 20四、寫出下列每個函數(shù)的功能(共20分,每小題4分)36.double SF(double x, int n) /n為正整數(shù) double p=1,s=1

35、; int i; for(i=1;i<=n;i+) p*=x; s+=p; return s; 答案:計算出1+x+x2+.+xn的值并返回。37.int SG(int x) /x為大于等于2的整數(shù) int i=2; while(i*i<=x) if(x%i=0) break; i+; if(i*i<=x) return 0; else return 1; 答案:判斷x是否為一個質(zhì)數(shù)(素數(shù)),若是則返回1,否則返回0。38.int WB(int a, int n, int x) for(int i=0;i<n;i+) if(ai=x) return 1; return

36、0; 答案:從數(shù)組an中順序查找值為x的元素,若查找成功則返回1,否則返回0。39.int fun(int m, int n) int c=0; static int b=2; if(m<b | n<b) return m*n; else if(m%b=0 && n%b=0) c=b; return c*fun(m/b,n/b); else b+; return fun(m,n); 答案:一個遞歸函數(shù)過程,求出兩個自然數(shù)m和n的最小公倍數(shù)。40.int LK(double a, int n) double s=0; int i,m=0; for(i=0;i<n

37、;i+) s+=ai; s/=n; for(i=0;i<n;i+) if(ai>=s) m+; return m; 答案:求出并返回數(shù)組a的n個元素中大于等于平均值的元素個數(shù)。形考任務(wù)4一、選擇題(共30分,每小題2分)1.假定有“struct BOOKchar title40; float price; struct BOOK book;”,則不正確的語句為( )。a. struct BOOK *x=malloc(book);b. struct BOOK x="C+ Programming",27.0;c. struct BOOK *x=malloc(size

38、of(struct BOOK);d. struct BOOK *x=&book;2.假定有“struct BOOKchar title40; float price; book;”,則正確的語句為( )。a. struct BOOK x= &book;b. struct BOOK *x=&book;c. struct BOOK x=calloc(BOOK);d. struct BOOK *x=BOOK;3.在結(jié)構(gòu)類型的定義中,不同數(shù)據(jù)成員的定義項之間采用的分隔符是( )。a. 句點b. 冒號c. 分號d. 逗號4.假定一個結(jié)構(gòu)類型的定義為 “struct Aint a,

39、b; double c;”,則該類型的長度為( )。a. 8b. 10c. 12d. 165.假定一個結(jié)構(gòu)類型的定義為 “struct Dint a; D* next;”,則該類型的長度為( )。a. 4b. 8c. 12d. 166.假定要訪問一個結(jié)構(gòu)指針變量x中的數(shù)據(jù)成員a,則表示方法為( )。a. x.ab. x->ac. x(a)d. xa7.與結(jié)構(gòu)成員訪問表達式等價的表達式為( )。a. x->nameb. &x->namec. (&x)->named. (*x)->name8.假定一個鏈表中結(jié)點的結(jié)構(gòu)類型為“struct A

40、Aint data, struct AA *next;”,則next數(shù)據(jù)成員的類型為( )。a. struct AAb. struct AA*c. AAd. int9.假定一個鏈表的表頭指針為f,結(jié)點中包含有data和next域,則向該鏈表的表頭插入一個地址為p的結(jié)點時,應(yīng)執(zhí)行的操作為( )。a. p->next=fb. p->next=f和f=pc. f=p->nextd. f->next=p和f=p10.標準輸入設(shè)備鍵盤的文件流標識符是( )。a. stdinb. stdoutc. stderrd. stdio11.表示文件結(jié)束符的符號常量為( )。a. eofb.

41、 Eofc. EOFd. feof12.C語言中打開一個數(shù)據(jù)文件的系統(tǒng)函數(shù)為( )。a. fgetc()b. fputc()c. fclose()d. fopen()13.從一個數(shù)據(jù)文件中讀入以換行符結(jié)束的一行字符串的系統(tǒng)函數(shù)為( )。a. gets()b. fgets()c. getc()d. fgetc()14.向一個二進制文件中寫入信息的函數(shù)fwrite()帶有的參數(shù)個數(shù)為( )。a. 1b. 2c. 3d. 415.在C語言中,為只寫操作打開一個文本文件的方式為( )。a. "a"b. "r+"c. "r"d. "w

42、"二、判斷題(共40分,每小題2分。敘述正確則回答“是”,否則回答“否”)16.在結(jié)構(gòu)類型的定義中,其中的數(shù)據(jù)成員可以是本身類型的直接對象。(×)17.在結(jié)構(gòu)類型的定義中,允許出現(xiàn)結(jié)構(gòu)類型不完整的超前定義。()18.定義結(jié)構(gòu)類型的變量時,不能夠同時進行初始化。(×)19.使用一個結(jié)構(gòu)類型時,必須一起使用關(guān)鍵字struct和類型標識符。()20.假定一個結(jié)構(gòu)類型的定義為 “struct Aint a,b; A* c;”,則該類型的長度為12。()21.假定一個結(jié)構(gòu)類型的定義為 “struct Bint a5; char* b;”,則該類型的長度為20。(×

43、)22.執(zhí)行calloc(n,8)函數(shù)調(diào)用時,將動態(tài)分配得到8*n個字節(jié)的存儲空間。()23.執(zhí)行malloc(sizeof(struct BB)函數(shù)調(diào)用時,得到的動態(tài)存儲空間能夠保存具有struct BB結(jié)構(gòu)類型的一個對象。()24.假定要訪問一個結(jié)構(gòu)對象x中的由a指針成員所指向的對象,則表示方法為x.a。(×)25.假定要訪問一個結(jié)構(gòu)指針p所指對象中的b指針成員所指的對象,則表示方法為p->b。(×)26.與結(jié)構(gòu)成員訪問表達式(*fp).score等價的表達式是fp->score。()27.在C語言中,對二進制文件的所有不同打開方式共有6種。()28.C語言

44、中的標準輸入和輸出設(shè)備文件都屬于字符文件。()29.在一個磁盤數(shù)據(jù)文件的文件名中,文件主名和擴展名都是必須的,不可省略。(×)30.在數(shù)據(jù)文件打開方式字符串中,字符r、w和a具有確定的含義,分別代表讀、寫和追加方式。()31.一個磁盤數(shù)據(jù)文件的文件名由文件主名和擴展名所組成,其中間用圓點分開。()32.C語言系統(tǒng)中提供一個用來描述文件屬性的類型標識符為FILE。()33.每次只能向文本文件中寫入一個字符,不能一次寫入一個字符串。(×)34.對二進制文件進行讀和寫操作將使用相同的系統(tǒng)函數(shù)。(×)35.在C語言中,系統(tǒng)函數(shù)fseek()用來移動數(shù)據(jù)文件中的文件位置指針。()三、寫出下列每個程序運行后的輸出結(jié)果(共15分,每小題5分)36.#include<stdio.h> struct Worker char name15; /姓名 int age; /年齡 float pay; /工資 ; void main() struct Worker x="wanghua",52,4300; struct Worker y, *p; y=x; p=&x; printf("%s %d %6.2fn",

溫馨提示

  • 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

提交評論