资源描述:
《2013年计算机等级考试二级c语言试题5》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、2013年计算机等级考试二级C语言试题5(31)有下而程序段#include"stdio.h"include"string.h"main(){chara[3][20]={{“china"},{“isa"},{“bigcountry!”}};chark[100]={0},*p=k;inti;for(i=0;i<3;i++){p=strcat(p,a[i]);}i=strlen(p);printf("%d",i);}则程序段的输出结果是A)18B)19C)20D)21(32)若有定义:char*st="howareyou“;,下列程序段中正确的是A)char
2、a[ll],*p;strcpy(p=a+l,&st[4]);B)chara[ll];strcpy(++a,st);C)chara[ll];strcpy(a,st);D)chara[],*p;strcpy(p二&a[l],st+2);(33)有以下程序#includeintfun(chars[]){intn=0;while(*sv二9&&*s>=O){n=10*n+*s-O;s++;}return(n);}main(){chars[10]={,6717*747*79//*707*/};printfC%d“,fun(s));}程序的运行结果
3、是A)9B)61490C)61D)5(34)设冇定义:charp[]=fl72733/q=p;,以下不能计算出一个char型数据所占字节数的表达式是A)sizeof(p)B)sizeof(char)C)sizeof(*q)D)sizeof(p[0])(35)有以下函数intaaa(char*s){char*t=s;while(*t++);t-;return(t-s);}以下关于aaa函数的功能的叙述正确的是A)求字符串s的长度B)比较两个串的大小C)将串s复制到串tD)求字符串s所占字节数(31)B【解析】字符串连接函数strcat的调用形式如F:strca
4、t(sl,s2)o此函数将s2所指字符串的内容连接到si所指的字符串后面,并自动覆盖si串末尾的尾标,函数返回si的地址值。(32)A【解析】木题综合考查字符数组的赋值和strcpy函数的用法。C语言不允许用赋值表达式对字符数组赋值,如下面的语句就是非法的:strl=”China",如果想把"China"这5个字符放到数组strl'p,除了逐个输入外,还能使用strcpy函数,该函数的功能是将一个字符串复制到一字符数组中。例如:strcpy(strirChina")或strcpy(strl,str2);注意,不能企图用以下语句来实行赋值(将str2的值传给s
5、trl):strl=str2;不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。strcpy函数的结构是:strcpy佇符数组1,字符串2)其中,需要注意的是,字符数组1的长度不应小于字符串2的长度,"字符数组1“必须写成数组名形式,如(strl),"字符串2“可以是字符数组名,也可以是字符串常量,不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。(33)C【解析】在fun函数中,while循环的功能是:逐个取字符数组s的字符判断其是否是数字。若是则将其作为个位数字保存到变量n中,n的原数据的各个数位将相应左移一个10进制位。当指针s指向
6、数组的第3位时,循环条件不成立,循环结束,返回n的值,输出n的值为61。(34)A【解析】在本题中,p和q同为指向字符类型数据的指针。*q和p[0]同为字符型数据。选项B)、C)和D)都符合题目的耍求;选项A)计算得出的是指针类型数据所占的内存字节数。(35)A【解析】循环开始前,指针t和s都指向字符串的起始位置,然后通过while循环判断t指向的位置是否为空,同时让t向右移动一位。while循环结束时,t自减1,此时t指向的位置是字符串的结束标志、0,处,故t-s的值是字符串的长度,并不包括结束标志。