C语言模拟题16-字符串.doc

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言模拟题16-字符串

第十部分 :字符串 一、选择题 (1)若有语句:char *line[5];,以下叙述中正确的是    A)定义line是一个数组,每个数组元素是一个基类型为char的指针变量    B)定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组    C)定义line是一个指针数组,语句中的*号称为间址运算符    D)定义line是一个指向字符型函数的指针 (2)有以下程序 #include string.h main() { char p[]={a, b, c}, q[10]={a, b, c}; printf(%d %d\n, strlen(p), strlen(q)); } 以下叙述中正确的是    A)在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3    B)由于p数组中没有字符串结束符,长度不能确定;但q数组中字符串长度为3    C)由于q数组中没有字符串结束符,长度不能确定;但p数组中字符串长度为3    D)由于p和q数组中都没有字符串结束符,故长度都不能确定 (3)有以下程序,其中函数f的功能是将多个字符串按字典顺序排序 #include string.h void f(char *p[], int n) { char *t; int i,j; for(i=0; in-1; i++) for(j=i+1; jn; j++) if(strcmp(p[i],p[j])0){ t=p[i]; p[i]=p[j]; p[j]=t; } } main() { char *p[5]={abc,aabdfg,abbd,dcdbe,cd}; f(p, 5); printf(%d\n, strlen(p[1])); } 程序运行后的输出结果是    A)2    B)3    C)6    D)4 (4)有定义语句:int b;char c[10]; ,则正确的输入语句是    A)scanf(%d%s,b,c);    B)scanf(%d%s,b,c);    C)scanf(%d%s,b,c);    D)scanf(%d%s,b,c); (5)以下能正确定义一维数组的选项是    A)int a[5]={0,1,2,3,4,5};    B)char a[]={0,1,2,3,4,5};    C)char a={A,B,C};    D)int a[5]=0123; (6)已有定义:char a[]=xyz,b[]={x,y,z};,以下叙述中正确的是    A)数组a和b的长度相同    B)a数组长度小于b数组长度    C)a数组长度大于b数组长度    D)上述说法都不对 (7)以下语句或语句组中,能正确进行字符串赋值的是    A)char *sp; *sp=right!;    B)char s[10]; s=right!;    C)char s[10]; *s=right!;    D)char *sp=right!; (8)有以下程序 main() { char s[]=159,*p; p=s; printf(%c,*p++); printf(%c,*p++); } 程序运行后的输出结果是    A)15    B)16    C)12    D)59 (9)有以下函数 fun(char *a,char *b) { while((*a!=\0)(*b!=\0)(*a==*b)) { a++; b++;} return (*a-*b); } 该函数的功能是    A)计算a和b所指字符串的长度之差    B)将b所指字符串复制到a所指字符串中    C)将b所指字符串连接到a所指字符串后面    D)比较a和b所指字符串的大小 (10)有以下程序 point(char *p) { p+=3; } main() { char b[4]={a,b,c,d},*p=b; point(p); printf(%c\n,*p); } 程序运行后的输出结果是    A)a    B)b    C)c    D)d (11) s12和s2已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是    A) if(s1s2)S;    B) if(strcmp(s1,s2))S;    C) if(strcmp(s2,s1)0) S;    D) if(strcmp(s1,s2)0)S; (12) 有以下程序 main() {char s

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档