模拟试题

3773考试网计算机等级考试模拟试题正文

2014年3月全国计算机二级C语言上机模拟试题十之3

来源:2exam.com 2013-10-30 19:17:29


  给定源程序: 

  #include  

  #include  

  int fun(char *str) 

  { 

  } 

  main() 

  { 

  char str[81]; 

  int n; 

  printf("Input a string:") ; 

  gets(str); 

  puts(str); 

  fun(str); 

  printf("*** str: %s\n",str); 

  NONO(); 

  } 

  解题思路: 

  本题是考察考生怎样利用字符串指针来删除字符串的空格字符。在函数开始处把指针p先指

  向字符串str以及位置变量i置0,然后采用while循环和字符串指针p来处理的,每循环一次来判断指针p所指的字符是否为空格,如果不是空格,则把该字符写到str字符串中,位置由i来控制,如果是空格,则不处理,继续取下一字符,直至字符串结束为止,最后再把字符串结束符写到

  位置为i的str上,再通过形参str返回。 

  参考答案: 

  int fun(char *str) 

  { 

  char *p = str ; 

  int i = 0 ; 

  while(*p) { 

  if(*p != ’ ’) str[i++] = *p ; 

  p++ ; 

  } 

  str[i] = 0 ; 

  } 

  ※※※※※※※※※※※※※※※※※※※※※※※※※ 

触屏版 电脑版
3773考试网 琼ICP备12003406号-1