1[填空題]請補充函數(shù)proc(),該函數(shù)的功能是將字符串str中的大寫字母都改為對應的小寫字母,其他字符不變。例如,若輸入“How Are You?”,則輸出“how are you?”。
注意:部分源程序給出如下。
請勿改動main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的橫線上填入所編寫的若干表達式或語句。
試題程序:
參考解析:
【解析】要將字符串中所有的大寫字母改為對應的小寫字母,首先應該找出字符串中所有的小寫字母。判斷一個字符是否是大寫字母,只要看其是否在A和Z之間,因此【1】處填“str[i]%=ˊZˊ”;每找到一個大寫字母,就將其改為小寫字母。大寫字母與小寫字母之間的關系為ASCⅡ相差32,因此【2】處填“sty[i]+=32”;得到的新的字符串放在str中,要將其返回給主函數(shù),因此[31處填“str”。
2[簡答題]下列給定程序中,函數(shù)proc()的功能是逐個比較str1,str2兩個字符串對應位置中的字符,把比ASCⅡ值大或相等的字符依次存放到str數(shù)組中,形成一個新的字符串。
例如,str1中的字符串為fshADfg,str2中的字符串為sdAEdi,則str中的字符串應為sshEdig。
請修改程序中的錯誤,使它能得到正確結果。
注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結構。
試題程序:
參考解析:
【解析】題目中要求將ASCIl碼值較大的字符放到新的字符串中,因此if的條件判斷語句“if(*p>=*q)”應改為“if(*p<=*q)”;在C語言中,每一條語句的結束是以“;”來標識的,因此k++后應該加上分號。
3[單選題]下列程序執(zhí)行后的輸出結果是( )。
A.6B.7C.8D.9
參考答案:A
參考解析:本題考查函數(shù)的調(diào)用,從主函數(shù)傳遞到調(diào)用函數(shù)中,*a的值為0,因此當執(zhí)行完調(diào)用函數(shù)后,6[0]的值為6。
4[單選題] 有以下程序
程序的運行結果是
A.14B.20C.10D.16
參考答案:A
參考解析:*(*(P+m)+k)系統(tǒng)默認為指針指向數(shù)組中第[m][k]個元素,因此,在for循環(huán)中,n+=*(*(P+m)+k);執(zhí)行的是將數(shù)組x[0][1]和x[1][1]累加后賦值給n,最后進行輸出,答案為A選項。
5[單選題] 有兩個關系R、S如下:
由關系R通過運算得到關系s,則所使用的運算為( )。
A.選擇B.投影C.插入D.連接
參考答案:B
參考解析:投影運算是指對于關系內(nèi)的域指定可引人新的運算。本題中S是在原有關系R的內(nèi)部進行的,是由R中原有的那些域的列所組成的關系。所以選擇8。
6[單選題] 下列敘述中正確的是( )。
A.一個邏輯數(shù)據(jù)結構只能有一種存儲結構
B.邏輯結構屬于線性結構,存儲結構屬于非線性結構
C.一個邏輯數(shù)據(jù)結構可以有多種存儲結構,且各種存儲結構不影響數(shù)據(jù)處理的效率
D.一個邏輯數(shù)據(jù)結構可以有多種存儲結構,且各種存儲結構影響數(shù)據(jù)處理的效率
參考答案:D
參考解析:數(shù)據(jù)的存儲結構是指數(shù)據(jù)的邏輯結構在計算機存儲空間中的存放形式。一種數(shù)據(jù)結構可以根據(jù)需要采用不同的存儲結構,存儲結構有順序和鏈式兩種。不同的存儲結構,其處理的效率不同。
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |