选择题   若有以下定义和语句:
    #include <stdio.h>
    char s1[10]='abcd!',  *s2='\n123\\';
    printf('%d  %d\n', strlen(s1), strlen(s2));
    则输出结果是______。
 
【正确答案】 C
【答案解析】strlen函数的功能是返回字符串的长度,求字符串长度时,遇到结束标识“\0”为止,但是长度不包括结束标识。字符数组s]的后5个元素没有赋值,都为“\0”,即“abcd!”后为“\0”。所以strlen(s1)的值为5。字符指针s2所指向的字符串中,“\n”为转义字符换行符,表示1个字符;“\\”也为转义字符,代表“\”,也是1个字符,其后为字符串结柬标识“\0”;所以strlen(s2)的值也为5。因此C选项正确。