精編國家開放大學(xué)電大《C語言程序設(shè)計》《機(jī)電控制工程基礎(chǔ)》網(wǎng)絡(luò)課形考網(wǎng)考作業(yè)(合集)答案

上傳人:可樂 文檔編號:15899899 上傳時間:2020-09-13 格式:DOCX 頁數(shù):67 大?。?3.81KB
收藏 版權(quán)申訴 舉報 下載
精編國家開放大學(xué)電大《C語言程序設(shè)計》《機(jī)電控制工程基礎(chǔ)》網(wǎng)絡(luò)課形考網(wǎng)考作業(yè)(合集)答案_第1頁
第1頁 / 共67頁
精編國家開放大學(xué)電大《C語言程序設(shè)計》《機(jī)電控制工程基礎(chǔ)》網(wǎng)絡(luò)課形考網(wǎng)考作業(yè)(合集)答案_第2頁
第2頁 / 共67頁
精編國家開放大學(xué)電大《C語言程序設(shè)計》《機(jī)電控制工程基礎(chǔ)》網(wǎng)絡(luò)課形考網(wǎng)考作業(yè)(合集)答案_第3頁
第3頁 / 共67頁

下載文檔到電腦,查找使用更方便

6 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《精編國家開放大學(xué)電大《C語言程序設(shè)計》《機(jī)電控制工程基礎(chǔ)》網(wǎng)絡(luò)課形考網(wǎng)考作業(yè)(合集)答案》由會員分享,可在線閱讀,更多相關(guān)《精編國家開放大學(xué)電大《C語言程序設(shè)計》《機(jī)電控制工程基礎(chǔ)》網(wǎng)絡(luò)課形考網(wǎng)考作業(yè)(合集)答案(67頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、國家開放大學(xué)電大《C語言程序設(shè)計》《機(jī)電控制工程基礎(chǔ)》網(wǎng)絡(luò)課形考網(wǎng)考作業(yè)(合集)答案 國家開放大學(xué)電大《C語言程序設(shè)計》《機(jī)電控制工程基礎(chǔ)》網(wǎng)絡(luò)課形考網(wǎng)考作業(yè)(合集)答案 《C語言程序設(shè)計》網(wǎng)絡(luò)課答案 形考任務(wù)1 一、選擇題(共40分,每小題2分)題目1 在每個C語言程序中都必須包含有這樣一個函數(shù),該函數(shù)的函數(shù)名為( )。 選擇一項:A. main 恭喜你,答對啦?。?B. MAIN C. name D. function 題目2 C語言源程序文件的缺省擴(kuò)展名為( )。 選擇一項:A. cpp B. exe C. obj D. c 題目

2、3 由C語言目標(biāo)文件連接而成的可執(zhí)行文件的缺省擴(kuò)展名為( )。 選擇一項:A. cpp B. exe C. obj D. c 題目4 程序運(yùn)行中需要從鍵盤上輸入多于一個數(shù)據(jù)時,各數(shù)據(jù)之間應(yīng)使用的分隔符為( )。 選擇一項:A. 空格或逗號 B. 逗號或回車 C. 逗號或分號 D. 空格或回車 題目5 每個C語言程序文件的編譯錯誤被分為( )。 選擇一項:A. 1類 B. 2類 C. 3類 D. 4類 題目6 不符合C語言規(guī)定的復(fù)合語句是( )。 選擇一項:A. {} B. {;} C. {x=0;} D. {

3、y=10} 題目7 C語言程序中的基本功能模塊為( )。 選擇一項:A. 表達(dá)式 B. 標(biāo)識符 C. 語句 D. 函數(shù) 題目8 在一個函數(shù)定義中,函數(shù)頭包括的3個部分依次為函數(shù)類型、函數(shù)名和( )。 選擇一項:A. 表達(dá)式 B. 語句 C. 參數(shù)表 D. 函數(shù)體 題目9 在一個程序文件中,若要使用#include命令包含一個用戶定義的頭文件,則此頭文件所使用的起止定界符為一對( )。 選擇一項:A. 尖括號 B. 雙引號 C. 單引號 D. 花括號 題目10 在C語言程序中,多行注釋語句使用的開始標(biāo)記符為( )。

4、 選擇一項:A. // B. /* C. */ D. ** 題目11 在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%c”,則對應(yīng)輸出的數(shù)據(jù)類型為( )。 選擇一項:A. char B. int C. float D. double 題目12 在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%5d”,則規(guī)定對應(yīng)輸出的數(shù)據(jù)占用的字符位置個數(shù)為( )。 選擇一項:A. 5 B. 4 C. 3 D. 6 題目13 轉(zhuǎn)義字符'\\'表示的字符是( )。 選擇一項:A. 單引號 B. 雙引號 C. 反斜線 D

5、. 問號 題目14 枚舉類型中的每個枚舉常量的值都是一個( )。 選擇一項:A. 整數(shù) B. 浮點(diǎn)數(shù) C. 字符 D. 邏輯值 題目15 運(yùn)算符優(yōu)先級最高的是( )。 選擇一項:A. = B. *= C. D. != 題目16 設(shè)x和y均為邏輯值,則x y為真的條件是( )。 選擇一項:A. 它們均為真 B. 其中一個為真 C. 它們均為假 D. 其中一個為假 題目17 設(shè)有語句“int a=12; a+=a*a;”,則執(zhí)行結(jié)束后,a的值為( )。 選擇一項:A. 12 B. 144 C. 156 D.

6、 288 題目18 x>0 x<=10的相反表達(dá)式為( )。 選擇一項:A. x<=0 || x>10 B. x<=0 x>10 C. x<=0 || x<=10 D. x>0 x>10 題目19 字符串“a+b=12\n”的長度為( )。 選擇一項:A. 6 B. 7 C. 8 D. 9 題目20 在下列的符號常量定義中,錯誤的定義語句格式為( )。 選擇一項:A. const int M1=10; B. const int M2=20; C. const int

7、 M3 10; D. const char mark='3'; 二、判斷題(共60分,每小題2分。敘述正確則回答“是”,否則回答“否”)題目21 C語言中的每條簡單語句以分號作為結(jié)束符。 選擇一項:對 錯 題目22 C語言中的每條復(fù)合語句以花括號作為結(jié)束符。 選擇一項:對 錯 題目23 在C語言程序中,在行尾使用注釋的開始標(biāo)記符為一對單斜線字符。 選擇一項:對 錯 題目24 注釋內(nèi)容的開始所使用的標(biāo)記符為/*,則注釋內(nèi)容的結(jié)束所使用的標(biāo)記符為*/。 選擇一項:對 錯 題目25 在一個C語言程序文件中,若要包含一個頭文件,則使用以百分號開始

8、的預(yù)處理命令。 選擇一項:對 錯 題目26 用于輸出表達(dá)式值的標(biāo)準(zhǔn)輸出函數(shù)是printf()。 選擇一項:對 錯 題目27 當(dāng)不需要函數(shù)返回任何值時,則需要使用保留字void作為函數(shù)的返回值類型。 選擇一項:對 錯 題目28 每個C程序文件在編譯時可能出現(xiàn)有警告性錯誤,其對應(yīng)的標(biāo)識符為error。 選擇一項:對 錯 題目29 十進(jìn)制數(shù)25表示成符合C語言規(guī)則的八進(jìn)制數(shù)為31。 選擇一項:對 錯 題目30 十進(jìn)制數(shù)25表示成符合C語言規(guī)則的十六進(jìn)制數(shù)為0x19。 選擇一項:對 錯 題目31 在C語言中,轉(zhuǎn)義字符'

9、\n'表示一個換行符。 選擇一項:對 錯 題目32 執(zhí)行“printf(“%c“,'F'-2);”語句后得到的輸出結(jié)果為H。 選擇一項:對 錯 題目33 已知字符'C'的ASCII碼為67,當(dāng)執(zhí)行“int x='C'+5;”語句后x的值為72。 選擇一項:對 錯 題目34 假定一個枚舉類型的定義為“enum RB{ab,ac=3,ad,ae}x=ad;”,則x的值為2。 選擇一項:對 錯 題目35 float的類型長度為8。 選擇一項:對 錯 題目36 在C語言中,常數(shù)28和3.26具有相同的數(shù)據(jù)類型。 選擇一項

10、:對 錯 題目37 若需要定義一個符號常量,并且使C語言能夠進(jìn)行類型檢查,則應(yīng)在定義語句的開始使用保留字const。 選擇一項:對 錯 題目38 使用const語句定義一個符號常量時,不必對它進(jìn)行初始化。 選擇一項:對 錯 題目39 表達(dá)式45%13的值為3。 選擇一項:對 錯 題目40 假定x=5,則表達(dá)式2*x++的值為12。 選擇一項:對 錯 題目41 表達(dá)式(float)25/4的值為6。 選擇一項:對 錯 題目42 表達(dá)式x=x+1表示成增量表達(dá)式為++x。 選擇一項:對 錯 題目43 關(guān)系表達(dá)式(

11、x!=0)的等價表達(dá)式為(x)。 選擇一項:對 錯 題目44 關(guān)系表達(dá)式x+y>5的相反表達(dá)式為x+y<=5。 選擇一項:對 錯 題目45 邏輯表達(dá)式(a>b || b==5)的相反表達(dá)式為(a>b b==5)。 選擇一項:對 錯 題目46 若x=5,y=10,則x>y邏輯值為真。 選擇一項:對 錯 題目47 假定x=5,則執(zhí)行“a=(x?10:20);”語句后a的值為10。 選擇一項:對 錯 題目48 帶有隨機(jī)函數(shù)的表達(dá)式rand()%20的值所在的區(qū)間范圍是0~19。 選擇

12、一項:對 錯 題目49 假定x=5,則執(zhí)行“y=x++;”語句后,x的值為5。 選擇一項:對 錯 題目50 假定x=5,則執(zhí)行“y=++x;”語句后,y的值為6。 選擇一項:對 錯 形考任務(wù)2 一、選擇題(共20分,每小題2分)題目1 當(dāng)處理特定問題時的循環(huán)次數(shù)已知時,通常采用的語句是( )。 選擇一項:a. for b. while c. do-while d. switch 題目2 在switch語句的每個case塊中,假定都是以break語句結(jié)束的,則此switch語句容易被改寫成的語句是( )。 選擇一項:a. for

13、 b. if c. do d. while 題目3 for語句能夠被改寫成的語句是( )。 選擇一項:a. 復(fù)合 b. if c. switch d. while 題目4 下面循環(huán)語句執(zhí)行結(jié)束后輸出的i值為( )。 for(int i=0; i<n; i++) if(i>n/2) {cout<<i<<endl; break;} 選擇一項:a. n/2 b. n/2+1 c. n/2-1 d. n-1 題目5 在下面循環(huán)語句中,內(nèi)層循環(huán)體S語句的執(zhí)行總次數(shù)為( )。 for(int i=0; i<

14、;n; i++) for(int j=i; j<n; j++) S; 選擇一項:a. n2 b. (n+1)/2 c. n(n-1)/2 d. n(n+1)/2 題目6 在下面的do循環(huán)語句中,其循環(huán)體被執(zhí)行的次數(shù)為( )。 int i=0; do i++; while(i*i<10); 選擇一項:a. 4 b. b. 3 c. 5 d. 2 題目7 在下面的一維數(shù)組定義中,有語法錯誤的選項是( )。 選擇一項:a. int a[]={1,2,3}; b. int a[10]={0}; c. int a[]; d

15、. int a[5]; 題目8 在下面的二維數(shù)組定義中,語法正確的選項是( )。 選擇一項:a. int a[5][]; b. int a[][5]; c. int a[][3]={{1,3,5},{2}}; d. int a[](10); 題目9 假定一個二維數(shù)組的定義語句為“int a[3][4]={{3,4},{2,8,6}};”,則元素a[1][1]的值為( )。 選擇一項:a. 2 b. 4 c. 6 d. 8 題目10 假定一個二維數(shù)組的定義語句為“int a[3][4]={{3,4},{2,8,6}};”,則元素a[2][1]的值為(

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

17、數(shù)的執(zhí)行過程,返回到調(diào)用該函數(shù)的位置。 選擇一項:對 錯 題目15 在程序執(zhí)行完成任一個函數(shù)調(diào)用后,將結(jié)束整個程序的執(zhí)行過程,返回到操作系統(tǒng)或C語言集成開發(fā)環(huán)境界面窗口。 選擇一項:對 錯 題目16 假定一維數(shù)組的定義為“char* a[8];”,則該數(shù)組所含元素的個數(shù)大于8。 選擇一項:對 錯 題目17 假定二維數(shù)組的定義為“int a[3][5];”,則該數(shù)組所占存儲空間的字節(jié)數(shù)為60。 選擇一項:對 錯 題目18 假定二維數(shù)組的定義為“char a[M][N];”,則該數(shù)組所含元素的個數(shù)為M+N。 選擇一項:對 錯 題

18、目19 假定二維數(shù)組的定義為“double a[M][N];”,則每個數(shù)組元素的行下標(biāo)取值范圍在0~M-1之間。 選擇一項:對 錯 題目20 假定二維數(shù)組的定義為“double a[M][N];”,則每個數(shù)組元素的列下標(biāo)取值范圍在0~N之間。 選擇一項:對 錯 題目21 存儲一個空字符串需要占用0個字節(jié)的存儲空間。 選擇一項:對 錯 題目22 使用“typedef char BB[10][50];”語句定義標(biāo)識符BB為含有10行50列的二維字符數(shù)組類型。 選擇一項:對 錯 題目23 存儲字符'a'需要占用1個字節(jié)的存儲空間。

19、選擇一項:對 錯 題目24 空字符串的長度為1。 選擇一項:對 錯 題目25 字符串“a:\\xxk\\數(shù)據(jù)“的長度為13。 選擇一項:對 錯 題目26 為了存儲一個長度為n的字符串,所使用的字符數(shù)組的長度至少為n+1。 選擇一項:對 錯 題目27 strcmp函數(shù)用于進(jìn)行兩個字符串之間的比較。 選擇一項:對 錯 題目28 strcpy函數(shù)用于把一個字符串拷貝到另一個字符數(shù)組空間中。 選擇一項:對 錯 題目29 一個二維字符數(shù)組a[10][20]能夠最多存儲9個字符串。 選擇一項:對 錯 題目30 一個二維字

20、符數(shù)組a[10][20]能夠存儲的每個字符串的長度不超過20。 選擇一項:對 錯 三、填空題:寫出下列每個程序運(yùn)行后的輸出結(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);

21、 case 10: printf(“%d “,3*x-1); break; default: printf(“%s“,“default\n“); } } 答:11?14 題目32 #include<stdio.h> void main() { int i,s=0; for(i=1;i<=5;i++) s+=i*i; printf(“s=%d\n“,s); } 答:s=55 題目33 #include<stdio.h>

22、 void main() { int i, s1=0, s2=0; for(i=0;i<10;i++) if(i%2) s1+=i; else s2+=i; printf(“%d %d\n“,s1,s2); } 答:25 20 題目34 #include<stdio.h> void main() { int n=6,y=1; while(n) y*=n--

23、; printf(“y=%d\n“,y); } 答:y=720 題目35 #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++;

24、 if(i%5==0) c5++; } printf(“%d %d %d\n“,c2,c3,c5); } 答:10 6 4) 題目36 #include<stdio.h> void main() { int i,s; for(i=1,s=0;i<10;i++) { if(i%3==0) continue; s+=i; } p

25、rintf(“%d\n“,s); } 答:27 題目37 #include<stdio.h> void main() { int a[8]={12,39,26,41,55,63,72,40}; int i, i1=0, i2=0; for(i=0;i<8;i++) if(a[i]%2==1) i1++; else i2++; printf(“%d %d\n“,i1,i2); } 答:4 4

26、題目38 #include<stdio.h> int a[10]={4,5,6,15,20,13,12,7,8,9}; void main() { int i,s[4]=0; for(i=0; i<10; i++) { switch(a[i]%4) { case 0: s[0]+=a[i];break; case 1: s[1]+=

27、a[i];break; case 2: s[2]+=a[i];break; default: s[3]+=a[i];break; } } for(i=0; i<4; i++) printf(“%d “,s[i]); } 答:44 27 6 22 題目39 #include<stdio.h> void main() { char a[]=“abcdbfbgacd“;

28、 int i1=0, i2=0, i=0; while(a[i]) { if(a[i]=='a') i1++; if(a[i]=='b') i2++; i++; } printf(“%d %d %d\n“,i1,i2,i); } 答:2 3 11 題目40 #include<stdio.h> void main() {

29、 int a[3][4]={{1,2,7,8},{5,6,10,6},{9,12,3,4}}; int m=a[0][0]; int i,j; for(i=0; i<3; i++) for(j=0; j<4; j++) if(a[i][j]>m) m=a[i][j]; printf(“%d\n“,m); } 答:12 四、簡答題:

30、根據(jù)下列每個題目要求編寫程序(共20分,每小題4分)題目41 編寫一個函數(shù),函數(shù)頭格式為“double Mean(double a[M][N],int m,int n)”,要求返回二維數(shù)組a[m][n]中所有元素的平均值,假定在計算過程中采用變量v存放平均值。 double Mean(double a[M][N], int m, int n) { int i, j; double v=0.0; for(i=0; i<m; i++) f

31、or(j=0; j<n; j++) v+=a[i][j]; v=v/(m+n); return v; } 答:double Mean(double a[M][N],int m,int n) { int i,j; double v=0.0; for(i=0; i<m; i++) for(j=0; j<n; j++) v+=a[i][j];

32、 v/=m*n; return v; } 題目42 編寫一個遞歸函數(shù)“int FF(int a[], int n)”,求出數(shù)組a中所有n個元素之積并返回。 int FF(int a[ ], int n) { if(n==1) return a[0]; else return FF(a, n-1)*a[n-1]; } 答:int FF(int a[], int n) { if(n==1) return a[n-1]; e

33、lse return a[n-1]*FF(a,n-1); } 題目43 編寫一個主函數(shù),利用while循環(huán),求出并顯示滿足不等式的最小n值。 #include <stdio.h> void main( ) { int i=0, s=0; while(s<=1000) { i++; s+=i*i; } printf(“滿足不

34、等式的最小n 值是: %d\n“, i); } 答:#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=%d\n“,i); } 題目44 編寫一個主函數(shù),求出滿足不等式22+42+...+n2<1000的最大n值,假定分別用i和s作為取偶數(shù)值和累加值的變量,并限定使用do循環(huán)編程。 #includ

35、e <stdio.h> void main( ) { int i=0, s=0; do { i+=2; s+=i*i; }while(s<1000); printf(“滿足不等式的最大n值是: %d\n“, i-2); } 答:#include<stdio.h> void main() {

36、int i=0; //用i作為依次取值偶數(shù)的變量 int s=0; //用s作為累加變量 do { i+=2; s+=i*i; }while(s<1000); printf(“n=%d\n“,i-2); } 題目45 編寫一個主函數(shù),計算并輸出12+22+...+n2值,其中n值由鍵盤輸入。 #include <stdio.h> void main( ) { int i, n

37、, s=0; printf(“請輸入一個整數(shù)n:“); scanf(“%d“, n); for(i=1; i<=n; i++) s+=i*i; printf(“s=%d\n“,s); } 答:#include<stdio.h> void main() { int i; //用i作為計數(shù)(循環(huán))變量 int s=0; //用s作為累加變量 int n; p

38、rintf(“輸入一個自然數(shù): “); scanf(“%d“,n); for(i=1; i<=n; i++) s+=i*i; printf(“s=%d\n“,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, int) 題目2 在下面的保留字中,不能作為函數(shù)的返回值類型的是( )。

39、 選擇一項:a. void b. int c. enum d. long 題目3 假定p是一個指向float型數(shù)據(jù)的指針,則p+1所指數(shù)據(jù)的地址比p所指數(shù)據(jù)的地址增加的字節(jié)數(shù)為( )。 選擇一項:a. 1 b. 2 c. 4 d. 8 題目4 假定a為一個數(shù)組名,在下面的表達(dá)式中,存在語法錯誤的是( )。 選擇一項:a. a[i] b. *a++ c. *a d. *(a+1) 題目5 用calloc函數(shù)創(chuàng)建具有10個整型元素的一維數(shù)組的正確語句是( )。 選擇一項:a. int *p=calloc(10,2); b. int *p=

40、calloc(10); c. int *p=calloc(10,4); d. int *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 a[1

41、0], x, *pa=a;”,要把數(shù)組a中下標(biāo)為3的元素值賦給x,則不正確的語句為( )。 選擇一項:a. x=pa[3]; b. x=*(a+3); c. x=a[3]; d. x=*pa+3; 題目9 假定有語句為“int b[10]; int *pb;”,則下面不正確的賦值語句為( )。 選擇一項:a. pb=b; b. pb=b[0]; c. pb=b+2; d. pb=b[5]; 題目10 已知“int *p=malloc(100);”,要釋放p所指向的動態(tài)內(nèi)存,正確的語句為( )。 選擇一項:a. free(p); b. fr

42、ee p; c. free(*p); d. free[p]; 題目11 在程序的一個文件中定義的函數(shù),若要在另一個文件中調(diào)用,則必須在這另一個文件中給出該函數(shù)的( )。 選擇一項:a. 原型語句 b. 參數(shù)表 c. 函數(shù)名 d. 返回類型 題目12 假定一個函數(shù)定義為“static int f1(int x,int y){return x+y;}”,該函數(shù)名稱為( )。 選擇一項:a. static b. int c. f1 d. return 題目13 假定一個函數(shù)的原型語句為“int ff(int* x);”,一個整型數(shù)組為a[10],則下面函數(shù)調(diào)用

43、表達(dá)式不正確的是( )。 選擇一項:a. ff(a) b. ff(a[0]) c. ff(a+3) d. ff(a[0]) 題目14 假定一個函數(shù)的數(shù)組參數(shù)說明為char a[],與之等價的指針參數(shù)說明為( )。1B 選擇一項:a. char a b. char* a c. char a d. char**a 題目15 假定一個函數(shù)的二維數(shù)組參數(shù)說明為char w[][N],與之等價的指針參數(shù)說明為( )。 選擇一項:a. char (*w)[N] b. char *w[N] c. char (*w)N d. char**a 二、判斷題(共30

44、分,每小題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)

45、頭文件。 選擇一項:對 錯 題目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++)運(yùn)算后,p所指對象的值為46。 選擇一項:對 錯 題目25 假定a是一個指針數(shù)組,則a+i所指對象的地址比a地址大4*i字節(jié)。 選擇一項:對

46、錯 題目26 若要把一個整型指針p轉(zhuǎn)換為字符指針,則采用的強(qiáng)制轉(zhuǎn)換表達(dá)式為(char*)p。 選擇一項:對 錯 題目27 假定一個數(shù)據(jù)對象為int*類型,則指向該對象的指針類型仍為int*類型。 選擇一項:對 錯 題目28 假定x為一個簡單變量,則x表示x的地址。 選擇一項:對 錯 題目29 若p指向x,則*p與x的值不同。 選擇一項:對 錯 題目30 NULL是一個符號常量,通常作為空指針值,它代表的值為0。 選擇一項:對 錯 三、寫出下列每個程序運(yùn)行后的輸出結(jié)果(共20分,每小題4分)題目31 #include<s

47、tdio.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=%d\n“,z); } 答:z=31 題目32 #include<stdio.h> #i

48、nclude<string.h> void fun(char ss[]); void main() { char s[15]=“0123456789“; fun(s); printf(“%s\n“,s); } void fun(char ss[]) { int i, n=strlen(ss) ; for(i=0; i<n/2; i++) {

49、 char c=ss[i]; ss[i]=ss[n-1-i]; ss[n-1-i]=c; } } 答:987543210 題目33 #include<stdio.h> int Count(int a[], int n, int x) { int i,c=0; for(i=0;i<n;i++)

50、 if(a[i]>x) c++; return c; } void main() { int a[8]={20,15,32,47,24,36,28,70}; int b=Count(a,8,30); printf(“b=%d\n“,b); } 答:B=4 題目34 #include<stdio.h> void main() {

51、 int a[8]={3,5,7,9,2,3,4,8}; int s=0,*p; for(p=a;p<a+8;) s+=*p++; printf(“s=%d\n“,s); } 答:s=41 題目35 #include<stdio.h> int LA(int *a, int n, int x) { int i,s=0; for(i=0;i<n;i++)

52、 if(a[i]<x) s+=a[i]; return s; } void main() { int a[8]={5,10,15,8,12,3,9,20}; int b=LA(a,5,10); int c=LA(a+2,6,10); printf(“%d %d\n“,b,c); } 答:13 20 四、寫出下列每個函數(shù)的功能(共20分,每小題4分)題目36 double SF(do

53、uble x, int n) { //n為正整數(shù) double p=1,s=1; 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

54、的整數(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

55、(int i=0;i<n;i++) if(a[i]==x) return 1; return 0; } 答:從數(shù)組a[n]中順序查找值為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

56、==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;i++) s+=a[i]; s/=n; f

57、or(i=0;i<n;i++) if(a[i]>=s) m++; return m; } 答:求出并返回數(shù)組a的n個元素中大于等于平均值的元素個數(shù)。 形考任務(wù)4 一、選擇題(共30分,每小題2分)題目1 假定有“struct BOOK{char title[40]; float price;}; struct BOOK book;”,則不正確的語句為( )。 選擇一項:a. struct BOOK *x=malloc(book); b. struct BOOK

58、x={“C++ Programming“,27.0}; c. struct BOOK *x=malloc(sizeof(struct BOOK)); d. struct BOOK *x=book; 題目2 假定有“struct BOOK{char title[40]; 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)類型的定義中,

59、不同數(shù)據(jù)成員的定義項之間采用的分隔符是( )。 選擇一項:a. 句點(diǎn) b. 冒號 c. 分號 d. 逗號 題目4 假定一個結(jié)構(gòu)類型的定義為 “struct A{int a,b; double c;};”,則該類型的長度為( )。 選擇一項:a. 8 b. 10 c. 12 d. 16 題目5 假定一個結(jié)構(gòu)類型的定義為 “struct D{int a; D* next;};”,則該類型的長度為( )。 選擇一項:a. 4 b. 8 c. 12 d. 16 反饋 Your answer is correct. 題目6 假定要訪問一個結(jié)構(gòu)指

60、針變量x中的數(shù)據(jù)成員a,則表示方法為( )。 選擇一項:a. x.a b. x->a c. x(a) d. x{a} 題目7 與結(jié)構(gòu)成員訪問表達(dá)式x.name等價的表達(dá)式為( )。 選擇一項:a. x->name b. x->name c. (x)->name d. (*x)->name 題目8 假定一個鏈表中結(jié)點(diǎn)的結(jié)構(gòu)類型為“struct AA{int data, struct AA *next;};”,則next數(shù)據(jù)成員的類型為( )。 選擇一項:a. struct AA b. struct AA*

61、c. AA d. int 題目9 假定一個鏈表的表頭指針為f,結(jié)點(diǎn)中包含有data和next域,則向該鏈表的表頭插入一個地址為p的結(jié)點(diǎn)時,應(yīng)執(zhí)行的操作為( )。 選擇一項:a. p->next=f b. p->next=f和f=p c. f=p->next d. f->next=p和f=p 題目10 標(biāo)準(zhǔn)輸入設(shè)備鍵盤的文件流標(biāo)識符是( )。 選擇一項:a. stdin b. stdout c. stderr d. stdio 題目11 表示文件結(jié)束符的符號常量為( )。 選擇一項:a. eof b. Eof c.

62、 EOF d. feof 題目12 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 向一個二進(jìn)制文件中寫入信息的函數(shù)fwrite()帶有的參數(shù)個數(shù)為( )。 選擇一項:a. 1 b. 2 c. 3 d. 4 題目15 在C語言中,為只寫操作打開一個文本文件的方式為

63、( )。 選擇一項:a. “a“ b. “r+“ c. “r“ d. “w“ 二、判斷題(共40分,每小題2分。敘述正確則回答“是”,否則回答“否”)題目16 在結(jié)構(gòu)類型的定義中,其中的數(shù)據(jù)成員可以是本身類型的直接對象。 選擇一項:對 錯 題目17 在結(jié)構(gòu)類型的定義中,允許出現(xiàn)結(jié)構(gòu)類型不完整的超前定義。 選擇一項:對 錯 題目18 定義結(jié)構(gòu)類型的變量時,不能夠同時進(jìn)行初始化。 選擇一項:對 錯 題目19 使用一個結(jié)構(gòu)類型時,必須一起使用關(guān)鍵字struct和類型標(biāo)識符。 選擇一項:對 錯 題目20 假定一個結(jié)構(gòu)類型的定義

64、為 “struct A{int a,b; A* c;};”,則該類型的長度為12。 選擇一項:對 錯 題目21 假定一個結(jié)構(gòu)類型的定義為 “struct B{int a[5]; char* b;};”,則該類型的長度為20。 選擇一項:對 錯 題目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)對

65、象x中的由a指針成員所指向的對象,則表示方法為x.a。 選擇一項:對 錯 題目25 假定要訪問一個結(jié)構(gòu)指針p所指對象中的b指針成員所指的對象,則表示方法為p->b。 選擇一項:對 錯 題目26 與結(jié)構(gòu)成員訪問表達(dá)式(*fp).score等價的表達(dá)式是fp->score。 選擇一項:對 錯 題目27 在C語言中,對二進(jìn)制文件的所有不同打開方式共有6種。 選擇一項:對 錯 題目28 C語言中的標(biāo)準(zhǔn)輸入和輸出設(shè)備文件都屬于字符文件。 選擇一項:對 錯 題目29 在一個磁盤數(shù)據(jù)文件的文件名中,文件主名和擴(kuò)展名都是必須的,

66、不可省略。 選擇一項:對 錯 題目30 在數(shù)據(jù)文件打開方式字符串中,字符r、w和a具有確定的含義,分別代表讀、寫和追加方式。 選擇一項:對 錯 題目31 一個磁盤數(shù)據(jù)文件的文件名由文件主名和擴(kuò)展名所組成,其中間用圓點(diǎn)分開。 選擇一項:對 錯 題目32 C語言系統(tǒng)中提供一個用來描述文件屬性的類型標(biāo)識符為FILE。 選擇一項:對 錯 題目33 每次只能向文本文件中寫入一個字符,不能一次寫入一個字符串。 選擇一項:對 錯 題目34 對二進(jìn)制文件進(jìn)行讀和寫操作將使用相同的系統(tǒng)函數(shù)。 選擇一項:對 錯 題目35 在C語言中,系統(tǒng)函數(shù)fseek()用來移動數(shù)據(jù)文件中的文件位置指針。 選擇一項:對 錯 三、寫出下列每個程序運(yùn)行后的輸出結(jié)果(共15分,每小題5分)題目36 #include<stdio.h> struct Worker { char name[15]; //姓名 int age;

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!