全国计算机等级考试二级C语言之字符串

出处:ExamLink.com收集整理 作者:唐易龙 日期:2007年03月20日 11时09分

(16) 有以下程序

以下是引用片段:
  main( )
  { char *p[10]={“abc”,”aabdfg”,”dcdbe”,”abbd”,”cd”};
  printf(“%d\n”,strlen(p[4]));
  }

  执行后输出结果是

  A) 2

  B) 3

  C) 4

  D) 5

  (17) 以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是

  A) char s[10]=”abcdefg”;

  B) char t[]=”abcdefg”,*s=t;

  C) char s[10];s=”abcdefg”;

  D) char s[10];strcpy(s,”abcdefg”);

  (18) 下列选项中正确的语句组是

  A) char s[8]; s={"Beijing"}; B) char *s; s={"Beijing"};

  C) char s[8]; s="Beijing"; D) char *s; s="Beijing";

  (19) 以下程序中函数scmp的功能是返回形参指针s1和 s2所指字符串中较小字符串的首地址

以下是引用片段:
  #include 
  #include 
  char *scmp(char *s1, char *s2)
  { if( strcmp (s1, s2<0)
  return(s1);
  else return(s2);
  }
  main ()
  { int I; char string[20], str[3][20];
  for(i=0;i<3;i++) gets(str[i]);
  strcpy(string,scmp(str[0],str[1]));/*库函数strcpy对字符串进行复制*/
  strcpy(string,scmp(string,str[2]));
  printf("%s\n",string);
  }

  运行时依次输入:abcd、abba和abc三个字符串,则输出结果为

  A) abcd

  B) abba

  C) abc

  D) abca

  (20) 有以下程序

以下是引用片段:
  #include 
  main()
  { char str[][20]={"Hello","Beijing"}, *p=str;
  printf("%d\n",strlin(p+20));
  }

  程序运行后的输出结果是

  A) 0

  B) 5

  C) 7

  D) 20

(21) 已定义以下函数

  fun(char *p2, char *p1)

  { while((*p2=*p1)!=‘\0’){p1++;p2++; } }

  函数的功能是

  A) 将p1所指字符串复制到p2所指内存空间

  B) 将p1 所指字符串的地址赋给指针 p2

  C) 对p1和p2两个指针所指字符串进行比较

  D) 检查p1和p2两个指针所指字符串中是否有‘\0’

  (22) 有以下程序

以下是引用片段:
  main()
  { char *s[]={"one","two","three"},*p;
  p=s[1];
  printf("%c,%s\n",*(p+1),s[0]);
  }

  执行后输出结果是

  A) n,two

  B) t,one

  C)w,one

  D) o,two

  (23) 阅读以下函数

以下是引用片段:
  fun(char *s1,char *s2)
  { int i=0;
  while(s1[i]==s2[i]&& s2[i]!=‘\0’)i++;
  return(s1[i]== && s2{i}!==‘\0’);
  }

  此函数的功能是

  A) 将s2所指字符串赋给s1

  B) 比较s1和s2所指字符串的大小,若s1比s2的大,函数值为1,否则函数值为0

  C) 比较s1和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0

  D) 比较s1和s2所指字符串的长度,若s1比s2的长,函数值为1,否则函数值为0

  (24) 有以下程序

以下是引用片段:
  main()
  { char str[]="xyz",*ps=str;
  while(*ps)ps++;
  for(ps--;ps-str>=0;ps--) puts(ps);
  }

  执行后的输出结果是

  A) yz B) z C) z D) x

  xyz yz yz xy

  xyz xyz

  (25) 有以下程序

以下是引用片段:
  #include 
  main()
  { char *p=“abcde\Ofghjik\0”;
  printf(“%d\n”,strlen(p));
  }

  程序运行后的输出结果是

  A) 12

  B) 15

  C) 6

  D) 5

(26) 有以下程序

以下是引用片段:
  void ss(char *s,char t)
  { while(*s)
  { if(*s==t) *s=t-‘a’+’A’;
  s++;
  }
  }
  main()
  { char str1[100]=“abcddfefdbd”,c=’d’;
  ss(str1,c); printf(“%s\n”,str1);
  }

  程序运行后的输出结果是

  A) ABCDDEFEDBD

  B) abcDDfefDbD

  C) abcAAfefAbA

  D) Abcddfefdbd

  (27) 以下程序的输出结果是

以下是引用片段:
  char cchar(char ch)
  {
  if(ch>=‘A’&&ch<=‘Z') ch=ch-‘A'+‘a';
  return ch;
  }
  main()
  { char s[]="ABC+abc=defDEF",*p=s;
  while(*p)
  { *p=cchar(*p);
  p++;
  }
  printf("%s\n",s);
  }

  A) abc+ABC=DEFdef

  B) abc+abc=defdef

  C) abcaABCDEFdef

  D) abcabcdefdef

  (28) 以下程序段的输出结果是

  char s[]="\\141\141abc\t";

  printf ("%d\n",strlen(s));

  A) 9

  B) 12

  C) 13

  D) 14

  (29) 以下程序的输出结果是

以下是引用片段:
  main()
  { char cf[3][5]={"AAAA","BBB","CC"};
  printf("\"%s\"\n",ch[1]);
  }

  A) "AAAA"

  B) "BBB"

  C) "BBBCC"

  D) "CC"

  (30) 以下程序的输出结果是

以下是引用片段:
  #include 
  #include 
  main()
  { char b1[8]="abcdefg",b2[8],*pb=b1+3;
  while (--pb>=b1) strcpy(b2,pb);
  printf("%d\n",strlen(b2));
  }

  A) 8

  B) 3

  C) 1

  D) 7

最后更新时间:2008-05-28 11:43:04
文章评论
共有 0 位网友发表了评论
用户名: 新注册) 密码: 匿名评论 [查看所有评论]

评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
您可以用以下几种方式找到此文章

考试全流程