1[填空題]給定程序中,函數fun的功能是:調用隨機函數產生20個互不相同的整數放在形參a所指數組中(此數組在主函數中已置O)。
請在程序的下畫線處填入正確的內容并把下畫線刪除,使程序得出正確的結果。
注意:部分源程序在文件BLANKl.C中。
不得增行或刪行,也不得更改程序的結構!
試題程序:
參考解析:
(1)N或20 (2)break (3)n
【解題思路】
填空l:變量n用于存儲數組的下標,要通過while語句對數組進行賦值,數組的容量為20,因此循環條件應為n<20。
填空2:通過一個for循環判斷X是否與數組中已存的元素重復,若重復則跳出for循環結束。
填空3:若for循環是由break語句結束的,則X與數組中的元素重復,此時i必然小于n;若for循環是因為循環變量i遞增到某值,而不再滿足循環條件結束的,說明X的值與數組中的元素不重復,則此時i的值等于n。
2[簡答題]下列給定程序中函數fun的功能是:統計substr所指的字符串在str所指的字符串中出現的次數。
例如,若字符串為aaas 1kaaas,子字符串為as,則應輸出2。
請改正程序中的錯誤,使它能得出正確的結果。
注意:不要改動main函數,不得增行或刪行,也不得更改程序的結構!
試題程序:
參考解析:
【參考答案】
(1)for(i=0;str[i];i++)
(2)if(substr[k+1]==’\0’)
【考點分析】
本題考查:for循環語句的格式,for循環語句使用最為靈活,其一般形式為for(表達式1;表達式2;表達式3),注意表達式之間使用“;”相隔;if條件語句的格式,其中if關鍵字需
要區別大小寫,不能混淆使用。關鍵字是由C語言規定的具有特定意義的字符串,也稱為保留字。用戶定義的標識符不應與關鍵字相同,并且關鍵字應小寫。.
【解題思路】
先看循環條件for(i=0,str[i],i++),不難發現此處for循環語句的格式有誤,其中表達式之間應以“;”相隔;同時很容易發現if條件語句處的關鍵字書寫錯誤。
3[單選題] 以下敘述中正確的是
A.語句int a[8]={0};是合法的
B.語句inta[]={0};是不合法的,遺漏了數組的大小
C.語句char a[2]={ "A","BII};是合法的,定義了一個包含兩個字符的數組
D.語句char a[3];a="AB";是合法的,因為數組有三個字符空間的容量,可以保存兩個字符
參考答案:A
參考解析:B選項中,如給全部元素賦值,則在數組說明中,可以不給出數組元素的個數;C選項中,char a[2]={ "","B"};不合法,應為char a[2]={´A´,´B´};;D選項中,字符數組只能在定義的時候可以用字符串常量來初始化,但不能夠先定義字符數組,然后再用字符串常量進行賦值。因此A選項正確。
4[單選題] 以下選項中合法的實型常量是( )
A.0B.3.13e-2.1C..914D.2.0*10
參考答案:C
參考解析:A選項為整型數據。B選項中e后面必須為整數。D選項是表達式,不是常量,所以選擇C。
5[單選題] 以下敘述中正確的是
A.循環發生嵌套時,最多只能兩層
B.三種循環for,while,do-while可以互相嵌套
C.循環嵌套時,如果不進行縮進形式書寫代碼,則會有編譯錯誤
D.for語句的圓括號中的表達式不能都省略掉
參考答案:B
參考解析:A選項中,循環發生嵌套時,沒有規定層數;C選項中,循環嵌套時,書寫代碼時沒有要求必須縮進;D選項中,for語句的圓括號中的表達式都可以省掉。因此B選項正確。
6[單選題] 下列敘述中正確的是( )。
A.有一個以上根結點的數據結構不一定是非線性結構
B.只有一個根結點的數據結構不一定是線性結構
C.循環鏈表是非線性結構
D.雙向鏈表是非線性結構
參考答案:B
參考解析:線性結構應滿足:有且只有一個根結點與每個結點最多有一個前件,也最多有一個后件,所以8正確。所以有一個以上根結點的數據結構一定是非線性結構,所以A錯誤。循環鏈表和雙向鏈表都是線性結構的數據結構。
7[單選題] 若變量已正確定義
for(x=0,Y=0;(y!=99&&x<4);x++)
則以上for循環
A.執行3次B.執行4次C.執行無限次D.執行次數不定
參考答案:B
參考解析:本題重點考查for語句的循環次數,for(x=0,y=0;(y!=99&&x<4);x++),y!=99&&x<4即循環條件當y不等于99以及x<4時,執行循環語句,當有一個條件不成立時,均結束循環,因此循環4次,B選項正確。
8[單選題] 負責數據庫中查詢操作的數據庫語言是( )。
A.數據定義語言B.數據管理語言C.數據操縱語言D.數據控制語言
參考答案:C
參考解析:數據定義語言:負責數據的模式定義與數據的物理存取構建;數據操縱語言:負責數據的操縱。包括查詢及增、刪、改等操作;數據控制語言:負責數據完整性、安全性的定義與檢查以及并發控制、故障恢復等功能。
9[單選題] 有以下程序:
程序執行后的輸出結果是( )。
A.PrphsbnB.ProhsbnC.ProgsbnD.Program
參考答案:B
參考解析:(*q)++是q所指的字符加l,q++就是指針移到下一個字符。因此B選項正確。
10[單選題] 有以下程序:
程序運行后的輸出結果是( )。
A.0B.9C.6D.8
參考答案:C
參考解析:主函數中調用f函數,同時將數值3傳遞給變量x,執行條件不滿足條件if(x==0IlX==1);跳過re—turn(3);,直接執行語句Y=X}X—f(x一2);這里f(x一2)為函數的遞歸調用,再次訶用f函數,此時x=1,判斷條件成立,返回3給f(1),Y=3}3—3=6,最后將6返回主函數,并進行輸出。因此c選項正確。
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |