110. 若有下列說明,則數值為4的表達式是(129)
inta[12]={l,2,3,4,5,6,7,8,9,10,11,12};
charc=‘a’,d,g;
(129)A. a[g-c]
B. a[4]
C. a[’d’-’c’]
D. a[’d’-c]
參考答案:(129)D。
解析:數組元素的下標自0開始順序編號,值為4的元素是a[3]。所以只有下標表達式的值為3的才是正確的。下標表達式g-C中的的變量g和c的值是還未被設定的,其值不確定。a[4]的值為5,下標為4是不對的!痙’-’c’的值為1,a[l]的值是2,所以也是不對的。變量c的值為’a’,’d’-c=3,所以正確解答是D。
111.設有定義:"chars[12]={"string"};"則printf("%d ",strlen(s));的輸出是(130)
(130)A. 6
B. 7
C. 11
D. 12
參考答案:(130)A。
解析:在C語言中,字符串是指在有效字符之后有字符率結束標記符的字符列,并約定字符串的長度是指字符率中有效字符個數,不包括字符串的結束標記符。存放于字符數組s中的字符串是“string”,該字符串的長度為6,所以輸出該字符串的長度應是6。正確的解答是A。
解析:A錯誤的原因是整數數組不可以用字符串對其初始化。B錯誤的原因是,數組初始化時,初始化指定的值的個數多于數組的元素個數。C錯誤的原因是,能用字符串初始化的只;有字符指針變量,或字符數組。字符率不能對其它類型的變量初始化,包括字符變量。D是正確的,因為字符數組可以用小整數(作為字符的ASCII代碼值)對其元素初始化。
114.語句"printf("%d "strlen("ats ol2\1\\"));"的輸出結果是(133)
(133)A. 11
B. 10
C. 9
D. 8
參考答案:(133)C。
解析:字符串中的字符可以是一般的普通字符,也可以是由反斜杠字符開頭的轉義字符。在字符串"abs o12\11\\"中,有三個轉義字符,它們是、\1、\\,所以該字符串的有效字符個數是9。所以正確的回答是C。
115.函數調用“strcat(strcpy(strl,str2),str3)”的功能是(134)
(134)A. 將字符串strl復制到字符串str2中后再連接到字符串str3之后
B. 將字符串strl連接到字符串str2中后再復制到字符率str3之后
C. 將字符串str2復制到字符串strl中后再將字符串str3連接到字符串strl之后
D. 將字符串str2連接到字符率strl之后再將字符串strl復制到字符串str3中
參考答案:(134)C。
解析:函數調用strcat(s1,s2)是將s2字符串復制連接到s1字符串之后,使s1字符串變得更長。函數調用strcpy(s1,s2)是將s2字符串復制到s1,使s1字符串的內容與s2字符串的內容相同。函數調用strcat(strcpy(strl,str2),str3)是先執(zhí)行strcpy(strl,str2),然后再執(zhí)行strcat(strl,str3),所以其功能是將字符串str2復制到字符串strl中,然后再將字符串str3復制連接到字符串strl之后。正確的選擇是C。
相關推薦:考試吧策劃:2010年軟件水平考試完全指南北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |