首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 计算机考试 > 等级考试 > 二级考试 >

2013年C语言计算机二级上机练习模拟题(2)(2)

2013-06-22 

  改错题

  给定程序MODI1.C中函数fun的功能是:从s所指字符串中删除所有小写字母c。

  请改正程序中的错误,使它能计算出正确的结果。

  注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构!

  给定源程序:

  #include

  void fun( char *s )

  { int i,j;

  for(i=j=0; s[i]!='\0'; i++)

  if(s[i]!='c')

  s[j]=s[i];

  s[i]='\0';

  }

  main()

  { char s[80];

  printf("Enter a string: "); gets(s);

  printf("The original string: "); puts(s);

  fun(s);

  printf("The string after deleted : "); puts(s);printf("\n\n");

  }

  解题思路:

  第一处: 新字符串的位置值是由变量j来控制的,但程序中字符赋值后没有对j进行增量的语句,所以应改为:s[j++]=s[i];。

  第二处: 对新字符串添加字符串结束符,由于程序中使用变量j对新字符串来控制的,所以应改为:s[j]=0;


热点排行