首頁 - 網(wǎng)校 - 萬題庫 - 美好明天 - 直播 - 導航
您現(xiàn)在的位置: 考試吧 > 計算機等級考試 > 計算機二級考試 > C語言 > 模擬試題 > 正文

2018年3月全國計算機二級C語言練習題及答案(4)

來源:考試吧 2018-01-23 16:01:51 要考試,上考試吧! 萬題庫
“2018年3月全國計算機二級C語言練習題及答案(4)”供考生參考。更多計算機等級考試內(nèi)容請訪問考試吧計算機等級考試網(wǎng)。
第 1 頁:選擇題

  點擊查看:2018年3月全國計算機二級C語言練習題及答案匯總

  一、選擇題(每小題1分,共40分)

  1[單選題] 有以下程序(注:字符a的ASCII碼值為97):

2018年3月全國計算機二級C語言練習題及答案(4)

  程序運行后的輸出結(jié)果是(  )。

  A.789

  B.abe

  C.7890

  D.979899

  參考答案:A

  參考解析:因為小寫字符a,b,c的ASCII碼值分別為97,98,99,而在do while循環(huán)語句中,每次對字符的ASCII碼值取余數(shù)并輸出,所以分別輸出7,8,9。

  2[單選題] 有以下程序:

  

2018年3月全國計算機二級C語言練習題及答案(4)

  程序運行后的輸出結(jié)果是(  )。

  A.7

  B.10

  C.8

  D.9

  參考答案:D

  參考解析:調(diào)用f(a,b)函數(shù)返回3,調(diào)用f(a,c)函數(shù)返回6,所以外層調(diào)用f(f(a,b),f(a,c));即調(diào)用f(3,6)函數(shù)返回9。

  3[單選題] 下面敘述中錯誤的是(  )。

  A.軟件測試的目的是發(fā)現(xiàn)錯誤并改正錯誤

  B.對被調(diào)試的程序進行“錯誤定位”是程序調(diào)試的必要步驟

  C.程序調(diào)試通常也稱為Debug

  D.軟件測試應嚴格執(zhí)行測試計劃,排除測試的隨意性

  參考答案:A

  參考解析:軟件測試的目的是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程,并不涉及改正錯誤,所以選項A錯誤。程序調(diào)試的基本步驟有:錯誤定位、修改設計和代碼,以排除錯誤、進行回歸測試,防止引進新的錯誤。程序調(diào)試通常稱為Debug,即排錯。軟件測試的基本準則有:所有測試都應追溯到需求、嚴格執(zhí)行測試計劃,排除測試的隨意性、充分注意測試中的群集現(xiàn)象、程序員應避免檢查自己的程序、窮舉測試不可能、妥善保存測試計劃等文件。

  4[單選題] 以下關(guān)于結(jié)構(gòu)化程序設計的敘述中正確的是(  )。

  A.結(jié)構(gòu)化程序使用goto語句會很便捷

  B.在C語言中,程序的模塊化是利用函數(shù)實現(xiàn)的

  C.一個結(jié)構(gòu)化程序必須同時由順序、分支、循環(huán)三種結(jié)構(gòu)組成

  D)由三種基本結(jié)構(gòu)構(gòu)成的程序只能解決小規(guī)模的問題

  參考答案:B

  參考解析:濫用goto語句將使程序的流程毫無規(guī)律,可讀性差,對于初學者來說盡量不要使用,所以A錯誤。一個結(jié)構(gòu)化程序可以包含順序、分支、循環(huán)結(jié)構(gòu)中的一種或多種,所以C錯誤。由三種基本結(jié)構(gòu)構(gòu)成的程序可以解決任何復雜的問題,所以D錯誤。

  5[單選題] 若變量已正確定義為int型,要通過語句:

  scanf("%d,%d,%d",&a,&b,&c);

  給a賦值1、給b賦值2、給c賦值3,以下輸入形式中錯誤的是(  )。(注:口代表一個空格符)

   2018年3月全國計算機二級C語言練習題及答案(4)

  ABCD參考答案:D

  參考解析:scanf()的格式控制串可以使用其他非空白字符,如本題中的逗號,但在輸入時必須輸入這些字符,以保證匹配。所以逗號必須輸入。

  6[單選題] 以下四個程序中,完全正確的是(  )。

  

2018年3月全國計算機二級C語言練習題及答案(4)

  ABCD參考答案:B

  參考解析:C語言中注釋語句的注釋方法是:/*注釋內(nèi)容*/或//注釋一行。所以A與C錯誤,D選項中預編譯命令indade前丟掉了”#”號。所以選擇B。

  7[單選題] 算法的空間復雜度是指(  )。

  A.算法在執(zhí)行過程中所需要的計算機存儲空間

  B.算法所處理的數(shù)據(jù)量

  C.算法程序中的語句或指令條數(shù)

  D.算法在執(zhí)行過程中所需要的臨時工作單元數(shù)

  參考答案:A

  參考解析:算法的空間復雜度是指算法在執(zhí)行過程中所需要的內(nèi)存空間。所以選擇A。

  8[單選題] 有以下程序:

   2018年3月全國計算機二級C語言練習題及答案(4)

  程序運行后的輸出結(jié)果是(  )。

  A.1,2,3,4,5,6,7,8,9,0,

  B.2,1,4,3,6,5,8,7,0,9,

  C.0,9,8,7,6,5,4,3,2,1,

  D.0,1,2,3,4,5,6,7,8,9,

  參考答案:A

  參考解析:函數(shù)調(diào)用中發(fā)生的數(shù)據(jù)傳送是單向的。即只能把實參的值傳送給形參而不能把形參的值反向地傳送給實參。因此在函致調(diào)用過程中,形參的值發(fā)生改變,而實參中的值不會變化,所以數(shù)組C中的元素的值并沒有變化,選擇A。

  9[單選題] 若變量x,y已正確定義并賦值,以下符合C語言語法的表達式是(  )。

  A.x+1=y

  B.++x,y=x- -

  C.x=z+10=z+y

  D.double(x)/10

  參考答案:B

  參考解析:A選項中不能將變量Y賦給表達式,C選項中錯誤與A選項一樣,D選項中強制類型轉(zhuǎn)換表達式應寫成(double)x/10。

  10[單選題] 若有以下函數(shù)首部:

   2018年3月全國計算機二級C語言練習題及答案(4)

  則下面針對此函數(shù)的函數(shù)聲明語句中正確的是(  )。

  

2018年3月全國計算機二級C語言練習題及答案(4)

  ABCD參考答案:B

  參考解析:函數(shù)聲明的一般形式為:“類型說明符被調(diào)函數(shù)名(類型形參,類型形參,……);"或"類型說明符被調(diào)函數(shù)名(類型,類型,……);”由于函數(shù)首部為int fun(double x[10],int * n),因此B選項正確。

  11[單選題] 設有以下語句:

  

2018年3月全國計算機二級C語言練習題及答案(4)

  執(zhí)行后,c的值為(  )。

  A.7

  B.9

  C.8

  D.6

  參考答案:B

  參考解析:b為2,二進制為00000010,執(zhí)行左移兩位操作后為00001000,然后與a 00000001做異或操作結(jié)果為00001001,即十進制的9。

  12[單選題] 數(shù)據(jù)庫應用系統(tǒng)中的核心問題是(  )。

  A.數(shù)據(jù)庫設計

  B.數(shù)據(jù)庫系統(tǒng)設計

  C.數(shù)據(jù)庫維護

  D.數(shù)據(jù)庫管理員培訓

  參考答案:A

  參考解析:數(shù)據(jù)庫應用系統(tǒng)中的核心問題是數(shù)據(jù)庫的設計。

  13[單選題] 以下定義語句中正確的是(  )。

  

2018年3月全國計算機二級C語言練習題及答案(4)

  ABCD參考答案:B

  參考解析:A選項語句中b變量還沒有定義不能直接用于給a變量賦值。c選項語句中*b、* c表示的是一個實型變量的地址,不能再將&b賦值給指針型變量c。D選項語句中a=0.0后面應該為逗號,不能是分號。

  14[單選題] 下列敘述中正確的是(  )。

  A.在switch語句中,不一定使用break語句

  B.在switch語句中必須使用default

  C.break語句必須與switch語句中的case配對使用

  D.break語句只能用于switch語句

  參考答案:A

  參考解析:default語句在switch語句中可以省略,所以B錯誤;switch語句中并非每個case后都需要使用break語句,所以C錯誤;break語句還可以用于for等循環(huán)結(jié)構(gòu)中,所以D錯誤。

  15[單選題] 對于一個正常運行的C程序,以下敘述中正確的是(  )。

  A.程序的執(zhí)行總是從main函數(shù)開始,在程序的最后一個函數(shù)中結(jié)束

  B.程序的執(zhí)行總是從程序的第一個函數(shù)開始,在main函數(shù)結(jié)束

  C.程序的執(zhí)行總是從main函數(shù)開始

  D.程序的執(zhí)行總是從程序的第一個函數(shù)開始,在程序的最后一個函數(shù)中結(jié)束

  參考答案:C

  參考解析:任何一個c程序都是從主函數(shù)main開始,至主函數(shù)main結(jié)束,所以選擇c選項。

  16[單選題] 有以下程序:

2018年3月全國計算機二級C語言練習題及答案(4)

  程序運行后的輸出結(jié)果是(  )。

  A.7

  B.5

  C.3

  D.9

  參考答案:C

  參考解析:向switch語句塊傳送參數(shù)后,編譯器會先尋找匹配的case語句塊,找到后就執(zhí)行該語句塊,遇到break跳出;如果沒有匹配的語句塊,則執(zhí)行default語句塊。case與default沒有順序之分。所以第一次循環(huán)k的值為1,執(zhí)行c+=k,c的值為l,再執(zhí)行case 2后的語句c++,c的值為2,遇到break語句跳出循環(huán);第二次循環(huán)k的值為2,執(zhí)行case 2后面的語句c++,c的值為3,跳出循環(huán)。

  17[單選題] 以下定義數(shù)組的語句中錯誤的是(  )。

  A.int num[][3]={{1,2},3,4,5,6};

  B.int num[2][4]={{1,2},{3,4},{5,6}};

  C.int num[]={1,2,3,4,5,6};

  D.int hum[][4]={1,2,3,4,5,6};

  參考答案:B

  參考解析:B)選項中定義的數(shù)組為2行4列,而賦值時賦成了3行所以出錯。

  18[單選題] 下列語句組中,正確的是(  )。

  

2018年3月全國計算機二級C語言練習題及答案(4)

  ABCD參考答案:A

  參考解析:字符型指針變量可以用選項A的賦值方法:char*s;s="Olympic",選項C的寫法:char*s,s={"Olympic"};是錯誤的。字符數(shù)組可以在定義的時候初始化:char s[]={"Olympic"};?或者char s[]="Olympic",都是正確的。但是不可以在定義字符數(shù)組后,對數(shù)組名賦值。(數(shù)組名是常量,代表數(shù)組首地址)所以選項B和選項D都是錯誤的。對于本例,選項B、D中字符數(shù)組8的大小至少為8,才能存放下字符串。(字符串的末尾都有結(jié)束標識‘\0’)。

  19[單選題] 以下關(guān)于typedef的敘述錯誤的是(  )。

  A.用typedef可以增加新類型

  B.typedef只是將已存在的類型用一個新的名字來代替

  C.用typedef可以為各種類型說明一個新名,但不能用來為變量說明一個新名

  D.用typedef為類型說明一個新名,通?梢栽黾映绦虻目勺x性

  參考答案:A

  參考解析:typedef并不是增加了新類型,而是用一個新名字替代已存在的類型,不能為變量說明一個新名,使用typedef可以增強程序的可移植性。所以A選項錯誤。

  20[單選題] 在E-R圖中,用來表示實體聯(lián)系的圖形是(  )。

  A.橢圓形

  B.矩形

  C.菱形

  D.三角形

  參考答案:C

  參考解析:在E-R圖中實體集用矩形,屬性用橢圓,聯(lián)系用菱形。

  21[單選題] 有以下程序:

  

2018年3月全國計算機二級C語言練習題及答案(4)

  程序運行后的輸出結(jié)果是(  )。

  A.Zhao,m,85,90,Qian,f,95,92

  B.Zhao,m,85,90,Zha0,m,85,90

  C.Qian,f,95,92,Qian,f,95,92

  D.Qian,f,95,92,Zha0,m,85,90

  參考答案:A

  參考解析:本題考查的是函數(shù)調(diào)用時的參數(shù)傳遞問題。程序在調(diào)用函數(shù)f時,傳給函數(shù)f的參數(shù)只是結(jié)構(gòu)變量c在棧中的一個拷貝,函數(shù)f所做所有操作只是針對這個數(shù)據(jù)拷貝進行的修改,這些都不會影響變量c的值。

  22[單選題] 耦合性和內(nèi)聚性是對模塊獨立性度量的兩個標準。下列敘述中正確的是(  )。

  A.提高耦合性降低內(nèi)聚性有利于提高模塊的獨立性

  B.降低耦合性提高內(nèi)聚性有利于提高模塊的獨立性

  C.耦合性是指一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密程度

  D.內(nèi)聚性是指模塊問互相連接的緊密程度

  參考答案:B

  參考解析:模塊獨立性是指每個模塊只完成系統(tǒng)要求的獨立的子功能,并且與其他模塊的聯(lián)系最少且接口簡單。一般較優(yōu)秀的軟件設計,應盡量做到高內(nèi)聚,低耦合,即減弱模塊之間的耦合性和提高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨立性,所以A錯誤,B正確。耦合性是模塊間互相連接的緊密程度的度量而內(nèi)聚性是指一個模塊內(nèi)部各個元素問彼此結(jié)合的緊密程度,所以C與D錯誤。

  23[單選題] 以下不能輸出字符A的語句是(  )。(注:字符A的ASCII碼值為65,字符a的ASCII碼值為97)

  

2018年3月全國計算機二級C語言練習題及答案(4)

  ABCD參考答案:B

  參考解析:B選項輸出的格式為%d,即為整型格式,所以輸出字符A的ASCII碼值65,而不是字符A。由于大寫字母比與其對應的小寫字母的ASCII碼值小32,所以A正確。字符A的ASCII碼值就是65,所以以%c格式輸出可以輸出字符A,所以C正確。由于字符A的ASCII碼值比字符B的小1,所以D正確。

  24[單選題] 有以下程序:

  

2018年3月全國計算機二級C語言練習題及答案(4)

  程序運行后的輸出結(jié)果是(  )。

  A.120

  B.11

  C.6

  D.21

  參考答案:D

  參考解析:fun函數(shù)中的變量x為靜態(tài)局部變量,占用固定的內(nèi)存單元,下一次調(diào)用時仍可以保留上次調(diào)用時的值。也就是說,如果多次調(diào)用fun函數(shù),s的定義只在第一次調(diào)用時有效,從第二次調(diào)用開始,X的定義相當于不存在,直接使用上次x的值。fun函數(shù)被調(diào)用了5次,每次調(diào)用后的返回值累加到s上。5次調(diào)用后,x的值為6,s的值為1+2+3+4+5+6=21。因此D選項正確。

  25[單選題] 軟件設計中劃分模塊的一個準則是(  )。

  A.低內(nèi)聚低耦合

  B.高內(nèi)聚低耦合

  C.低內(nèi)聚高耦合

  D.高內(nèi)聚高耦合

  參考答案:B

  參考解析:一般較優(yōu)秀的軟件設計,應盡量做到高內(nèi)聚,低耦合,即減弱模塊之間的耦合性和提高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨立性。

  26[單選題] 有以下程序:

  

2018年3月全國計算機二級C語言練習題及答案(4)

  程序運行后的輸出結(jié)果是(  )。

  A.2,3,1,6,8.7,5,4,10,9,

  B.10,9,8,7,6,5,4,3,2,1,

  C.1,2,3,4,5,6,7,8,9,10,

  D.10,9,8,7,6,1,2,3,4,5,

  參考答案:C

  參考解析:本題的子函數(shù)f的功能是對結(jié)構(gòu)體變量8中第二個成員數(shù)組中所有的數(shù)據(jù)進行從小到大的冒泡排序,所以結(jié)果是C。

  27[單選題] 有三個關(guān)系R、S和T如下:

   2018年3月全國計算機二級C語言練習題及答案(4)

  其中關(guān)系T由關(guān)系R和S通過某種操作得到,該操作為(  )。

  A.選擇

  B.投影

  C.交

  D.并

  參考答案:D

  參考解析:關(guān)系T中包含了關(guān)系R與S中的所有元組,所以進行的是并的運算。

  28[單選題] 有以下程序:

  

2018年3月全國計算機二級C語言練習題及答案(4)

  程序執(zhí)行后的輸出結(jié)果是(  )。

  A.20

  B.25

  C.45

  D.36

  參考答案:B

  參考解析:統(tǒng)計1~9九個數(shù)中的奇數(shù)和,此題考察指向數(shù)組的指針。C語言規(guī)定數(shù)組名代表數(shù)組的首地址,也就是第一個元素的地址。因此*(t+i)代表數(shù)組的第i+1個元素。程序運行的結(jié)果是l+3+5+7+9=25。

  29[單選題] 下列數(shù)據(jù)結(jié)構(gòu)中,能夠按照“先進后出”原則存取數(shù)據(jù)的是(  )。

  A.循環(huán)隊列

  B.棧

  C.隊列

  D.二叉樹

  參考答案:B

  參考解析:棧是按先進后出的原則組織數(shù)據(jù)的。隊列是先進先出的原則組織數(shù)據(jù)。

  30[單選題] 以下敘述中錯誤的是(  )。

  A.gets函數(shù)用于從終端讀入字符串

  B.getchar函數(shù)用于從磁盤文件讀入字符

  C.fput,函數(shù)用于把字符串輸出到文件

  D.fwrite函數(shù)用于以二進制形式輸出數(shù)據(jù)到文件

  參考答案:B

  參考解析:本題考查字符處理函數(shù)和文件操作函數(shù),屬于基礎(chǔ)知識,其中B選項getehar函數(shù)是用于從終端讀入一個字符。

  31[單選題] 有以下程序:

2018年3月全國計算機二級C語言練習題及答案(4)

  程序運行后的輸出結(jié)果是(  )。

  A.33

  B.197

  C.143

  D.28

  參考答案:C

  參考解析:本題考查帶參數(shù)的宏定義,s為帶參數(shù)的宏定義,運行S(k+j)為4*(k+j)*k+j+1=143,選項C正確。

  32[單選題] 以下選項中能表示合法常量的是(  )。

  A.1,200

  B.1.5E2.0

  C.'\'

  D."\007"

  參考答案:D

  參考解析:A選項中整型常量應表示為1200,不能包含“,”。B選項中E后面的指數(shù)必須為整數(shù)。C選項中轉(zhuǎn)義字符以“\”開始,若要表示字符“\”,應寫為“\\”。

  33[單選題] 設有如下函數(shù)定義:

   2018年3月全國計算機二級C語言練習題及答案(4)

  若執(zhí)行調(diào)用語句“n=fun(3);”,則函數(shù)fun總共被調(diào)用的次數(shù)是(  )。

  A.2

  B.3

  C.4

  D.5

  參考答案:B

  參考解析:首先n=fun(3),3被當作參數(shù)傳遞進去,這就進行了一次調(diào)用,3被當作參數(shù)傳進去后,程序會執(zhí)行這句else returnfun(k-1)+1;這就調(diào)用了第二次,而參數(shù)是3-l也就是2。2被當作參數(shù)傳進去后,程序會執(zhí)行這句elsereturn fun(k-1)+1;這就調(diào)用了第三次,而參數(shù)是2-1也就是1。1被當作參數(shù)傳進去后,程序會執(zhí)行這句else if(k==1)return 1;不再遞歸調(diào)用,所以最終結(jié)果為3次。

  34[單選題] 若有定義語句:

  char s[10]="1234567\0\0";

  則strlen(S)的值是(  )。

  A.7

  B.8

  C.9

  D.10

  參考答案:A

  參考解析:strlen()函數(shù)在計算字符串長度時,遇到結(jié)束標識為止,且長度不包括結(jié)束標識。本題中字符串,從第一個字符開始,遇到第一個結(jié)束標識‘\0’為止,注意‘\0’不占字符串長度,所以字符串長度為7。因此A選項正確。

  35[單選題] C源程序中不能表示的數(shù)制是(  )。

  A.十六進制

  B.八進制

  C.十進制

  D.二進制

  參考答案:D

  參考解析:在C語言中整型常量可以用十進制、八進制和十六進制等形式表示,但不包括二進制,所以選擇D。

  36[單選題] 若有以下定義:

   2018年3月全國計算機二級C語言練習題及答案(4)

  則對x數(shù)組元素的正確引用是(  )。

  A.pt+3

  B.*&x[10]

  C.*(pt+10)

  D.*(x+3)

  參考答案:D

  參考解析:沒有A選項的引用形式。*與&放在一起作用抵消,所以B選項錯誤,最大只能引用到x[9]。*(pt+i)表示引用指針pt所指元素后的第i個元素,所以c選項錯誤,最大只能為*(pt+9)。因此D選項正確。

  37[單選題] 有以下程序:

  

2018年3月全國計算機二級C語言練習題及答案(4)

  程序運行后的輸出結(jié)果是(  )。

  A.A B E F

  B.C D E F

  C.A B C D

  D.C D A B

  參考答案:B

  參考解析:本題考察的是變量的作用范圍。如果在同一個源文件中,外部變量與局部變量同名,則在局部變量的作用范圍內(nèi),外部變量被“屏蔽”,即不起作用。本題中,在funl()和main()函數(shù)內(nèi)訪問的是全局變量a和b,在fun2()函數(shù)中訪問的是形參變量a和b。所以,main()函數(shù)中的printf()函數(shù)輸出的是在fun1()函數(shù)中被改變的全局變量a和b的值C、D,而fun2()函數(shù)中輸出的是傳遞給它的實參值E、F。因此B選項正確。

  38[單選題] 有以下程序:

  

2018年3月全國計算機二級C語言練習題及答案(4)

  若運行時輸入:246<回車>,則輸出結(jié)果為(  )。

  A.204

  B.200

  C.240

  D.246

  參考答案:A

  參考解析:奉題中輸入的3個數(shù)據(jù)2,4,6分別賦值給了x[0][0],x[1][0],x[2][0]。x[0][1]仍為初始時的0,所以打印輸出時的結(jié)果為A選項。

  39[單選題] 設有定義:

  int a=1,b=2,e=3;

  以下語句中執(zhí)行效果與其他三個不同的是(  )。

  A.if(a>b) c=a,a=b,b=c;

  B.if(a>b) {e=a,a=b,b=e;}

  C.if(a>b)e=a;a=b;b=C;

  D.if(a>b) {c-7-a;a=b;b=e;}

  參考答案:C

  參考解析:由于a小于b,所以所有選項中的條件都為假,c選項中實際執(zhí)行了a=b;b=c;兩個操作。而A、B、D選項由于條件不成立.所以什么也沒有做,所以選擇C選項。

  40[單選題] 軟件按功能可以分為:應用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應用軟件的是(  )。

  A.編譯程序

  B.操作系統(tǒng)

  C.教務管理系統(tǒng)

  D.匯編程序

  參考答案:C

  參考解析:編譯軟件、操作系統(tǒng)、匯編程序都屬于系統(tǒng)軟件,只有C教務管理系統(tǒng)才是應用軟件。

  二、程序填空題(共18分)

  41[填空題]

  下列給定程序中,函數(shù)fun的功能是進行數(shù)字字符轉(zhuǎn)換。若形參ch中是數(shù)字字符‘0’~‘9’,則將‘0’轉(zhuǎn)換成‘9’,‘1’轉(zhuǎn)換成‘8’,‘2’轉(zhuǎn)換成‘7’,……,‘9’轉(zhuǎn)換成‘0’;若是其他字符則保持不變;并將轉(zhuǎn)換后的結(jié)果作為函數(shù)值返回。

  請在程序的下劃線處填入正確的內(nèi)容并將下劃線刪除,使程序得出正確的結(jié)果。

  注意:部分源程序在文件BLANKl.C中。

  不得增行或刪行,也不得更改程序的結(jié)構(gòu)!

   2018年3月全國計算機二級C語言練習題及答案(4)

2018年3月全國計算機二級C語言練習題及答案(4)

  

  參考解析:【參考答案】 (1)char

  (2)eh<='9'

  (3)'0'

  【考點分析】

  本題考查:函數(shù)定義,注意函數(shù)定義的一般形式以及有參函數(shù)和無參函數(shù)的區(qū)別;if語句條件表達式,本題的條件表達式是判斷數(shù)字字符;函數(shù)返回值,其一般形式為“return表達式;”。

  【解題思路】

  填空l:函數(shù)定義時,類型標識符指明了本函數(shù)的類型,函數(shù)的類型實際上是函數(shù)返回值的類型,所以此處應該填char。

  填空2:通過if條件語句判斷字符串中字符是否是數(shù)字字符,既大于等于字符‘0’,同時小于等于字符‘9’。

  填空3:return語句完成函數(shù)返回操作,要實現(xiàn)字符轉(zhuǎn)換,應填入return'9'-(ch-'0')。

  【解題寶典】

  有參函數(shù)定義,其一般形式為:類型標識符函數(shù)名(形式參數(shù)表列)

  {聲明部分

  語句

  在形參表中給出的參數(shù)稱為形式參數(shù),它們可以是各種類型的變量,各參數(shù)之間用逗號間隔。在進行函數(shù)調(diào)用時,主調(diào)函數(shù)將賦予這些形式參數(shù)實際的值。形參既然是變量,必須在形參列表中給出類型說明。

  三、程序修改題(共18分)

  42[簡答題]

  下列給定程序中,函數(shù)fun的功能是:讀入一個字符串(長度<20),將該字符串中的所有字符按ASCII碼值升序排序后輸出。例如,若輸入“edcba”,則應輸出“abcde”。

  請改正程序中的錯誤,使它能得出正確的結(jié)果。

  注意:部分源程序在文件MODI1.C中,不要改動main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!

  試題程序:

  

2018年3月全國計算機二級C語言練習題及答案(4)



2018年3月全國計算機二級C語言練習題及答案(4)

  參考解析:【參考答案】

2018年3月全國計算機二級C語言練習題及答案(4)

  【解題思路】

  (1)本題是利用選擇法對數(shù)組元素進行比較排序。所謂選擇法,是依次用當前取得的元素和其后面的元素進行比較,在第一個元素和其后面的元素順次比較時,可以借助中間變量來對兩個數(shù)進行交換,要保證第一個元素始終存放數(shù)組中的最大數(shù),以后依次挑選出次大數(shù),這樣最終的數(shù)組就是有序的。strlen函數(shù)所求得的字符串長度包括字符串結(jié)束符,所以要減1。

  (2)這里是一個分析邏輯錯誤,題中要求按升序排序,所以應改為

  

2018年3月全國計算機二級C語言練習題及答案(4)

  四、程序設計題(共24分)

  43[簡答題]

  m個人的成績存放在score數(shù)組中,請編寫函數(shù)fun,它的功能是:將低于平均分的人數(shù)作為函數(shù)值返回,將低于平均分的分數(shù)放在below所指的數(shù)組中。

  例如,當score數(shù)組中的數(shù)據(jù)為10、20、30、40、50、印、70、80、90時,函數(shù)返回的人數(shù)應該是4,below中的數(shù)據(jù)應為10、20、30、40。

  注意:部分源程序在文件PROG1.C中。

  請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填入你編寫的若干語句。

  試題程序:

  

2018年3月全國計算機二級C語言練習題及答案(4)

2018年3月全國計算機二級C語言練習題及答案(4)

  

  參考解析:【參考答案】

  
2018年3月全國計算機二級C語言練習題及答案(4)

  【解題思路】

  要計算低于平均分的人數(shù),首先應該求出平均分,然后通過for循環(huán)語句和if條件語句找出低于平均分的分數(shù)。該題第1個循環(huán)的作用是求出平均分av,第2個循環(huán)的作用是找出低于平均分的成績記錄并存入below數(shù)組中。

掃描/長按二維碼幫助考試通關(guān)
2018年等考報考資訊
2018等考各科通關(guān)技巧
2018各科最新預測試卷
2018等考各科備考資料

微信搜索"考試吧"了解更多考試資訊、下載備考資料

  相關(guān)推薦:

  2018年全國計算機等級考試必做試題匯總(各科目)

  2018年全國計算機等級考試復習知識點匯總(各科目)

  2018計算機等級考試報名時間|各地報名入口|報名條件

  2018年全國計算機等級考試時間|教材目錄(2018年版)

  2018全國計算機等級考試備考經(jīng)驗及應試技巧匯總

  報名方法|考試內(nèi)容|考試大綱|2018計算機等級考試科目

  歷年真題匯總|考試吧策劃:2018年計算機等級考試報考指南

0
收藏該文章
0
收藏該文章
文章責編:wangmeng  
看了本文的網(wǎng)友還看了
文章搜索
萬題庫小程序
萬題庫小程序
·章節(jié)視頻 ·章節(jié)練習
·免費真題 ·?荚囶}
微信掃碼,立即獲!
掃碼免費使用
版權(quán)聲明:如果計算機等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本計算機等級考試網(wǎng)內(nèi)容,請注明出處。
Copyright © 2004- 考試吧計算機等級考試網(wǎng) 出版物經(jīng)營許可證新出發(fā)京批字第直170033號 
京ICP證060677 京ICP備05005269號 中國科學院研究生院權(quán)威支持(北京)
在線模擬試題
考證通關(guān)殺器
考試最新資訊
一次通關(guān)技巧