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

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

(6) 以下程序运行后的输出结果是 【8】 。

以下是引用片段:
  main ()
  { char a[]="Language",b[]="Programe";
  char *p1,*p2; int k;
  p1=a; p2=b;
  for(k=0;k<=7;k++)
  if(*p1+k)==*(p2+k)} printf("%c",*(p1+k))_;
  }

  (7) 以下程序运行后的输出结果是 【9】 。

以下是引用片段:
  main()
  { char a[]="123456789",*p; int i=0;
  p=a;
  while(*p)
  { if(i%2==0) *p='*';
  p++;i++;
  }
  puts(a);
  }

  (8) 以下sstrcpy( )函数实现字符串复制,即将t所指字符串复制到s所指向内存空间中,形成一个新的字符串s。请填空。

以下是引用片段:
  void sstrcpy(char *s,char *t)
  { while(*s++=【10】);}
  main( )
  { char str1[100],str2[]=”abcdefgh”;
  sstrcpy(str1,str2);
  printf(“%s\n”,str1);
  }

  (9) 下列程序的运行结果是:【11】

以下是引用片段:
  #include 
  char *ss(char *s)
  { return s+strlen(s)/2;}
  main( )
  { char *p,*str=”abcdefgh”;
  p=ss(str); printf(“%s\n”,p);
  }

  (10) 以下程序运行后输入:3,abcde<回车>,则输出结果是 【12】

以下是引用片段:
  #include 
  move(char *str, int n)
  { char temp ; int i;
  temp=str[n-1];
  for(i=n-1; i>0;i--) str[i]=str[i-1];
  str[0]=temp;
  }
  main()
  { char s[50]; int n, i, z;
  scanf("%d,%s",&n, s);
  z=strlen(s);
  for(i=1; i<=n; i++) move(s,z);
  printf("%s\n",s);
  }

(11) 以下程序的功能是将字符串s中的数字字符放入d数组中,最后输出d中的字符串。例如,输入字符串:abc123edf456gh,执行程序后输出:123456。请填空。

以下是引用片段:
  #include 
  #include 
  main()
  { char s[80], d[80]; int i, j;
  gets(s);
  for(i=j=0; s[i]!=‘\0’; i++)
  if( 【13】 ) { d[j]=s[i]; j++;}
  d[j]=‘\0’;
  puts(d);
  }

  (12) 以下函数的功能是删除字符串s中的所有数字字符。请填空。

以下是引用片段:
 void dele(char *s)
  { int n=0,i;
  for(i=0,s[i];i++)
  if(【14】)
  s[n++]=s[i];
  s[n]=【15】;
  }

  (13) 函数sstrcmp()的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。

以下是引用片段:
  #include 
  int sstrcmp(char *s,char *t)
  { while(*s&&*t&& *s== [16] )
  { s++;t++;}
  return [17] ;
  }

  (14) 以下程序的输出结果是【18】 。

以下是引用片段:
  main()
  { char *p="abcdefgh",*r;
  long *q;
  q=(long*)p;
  q++;
  r=(char*)q;
  printf("%s\n",r);
  }

  (15) 以下程序的输出结果是【19】 。

以下是引用片段:
  main()
  { char s[]="abcdef";
  s[3]=‘\0';
  printf("%s\n",s);
  }

(16) mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。请填空。

以下是引用片段:
  int mystrlen(char *str)
  { int i;
  for(i=0; 【20】!=‘\0';i++);
  return(【21】);
  }

  (17) 以下程序运行后的输出结果是 【22】 。

以下是引用片段:
  main()
  { char s[ ]=“9876”,*p;
  for ( p=s ; p 
  }

  (18) 若有定义语句: char s[100],d[100]; int j=0, i=0;,且s中已赋字符串,请填空以实现字符串拷贝。(注:不得使用逗号表达式)

  while([i]){ d[j]= 【23】;j++;}

  d[j]=0;

  (19) 下列程序段的输出结果是 【24】 。

以下是引用片段:
  main()
  { char b[]=”Hello,you”;
  b[5]=0;
  printf(“%s \n”, b );
  }

  (20) 以下函数把b字符串连接到a字符串的后面,并返回a中新字符串的长度。请填空。

以下是引用片段:
  Strcen(char a[], char b[])
  { int num=0,n=0;
  while(*(a+num)!= [25] ) num++;
  while(b[n]){*(a+num)=b[n]; num++; [26] ;}
  return(num);
  }

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

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

考试全流程