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

计算机二级2013年最新C语言上机同步训练题(4)(2)

2013-05-30 
计算机二级2013年最新C语言上机同步训练题(4)小编寄语:现在读书人网(www.reader8.com)陆续为您整理考试相关信息,供大家参考,希望对同学们在这短暂的日子里将这些内容整理掌握。

  给定程序MODI1.C中函数fun的功能是: 将s所指字符串中位于奇数位置的字符或ASCII码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。

  例如, 字符串中的数据为: AABBCCDDEEFF,

  则输出应当是:ABBCDDEFF。

  请改正函数fun中指定部位的错误, 使它能得出正确的结果。

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

  给定源程序:

  #include

  #include

  #define N 80

  void fun(char *s, char t[])

  { int i, j=0;

  for(i=0; i  if(i%2 && s[i]%2==0)

  t[j++]=s[i];

  t[i]='\0';

  }

  main()

  { char s[N], t[N];

  printf("\nPlease enter string s : "); gets(s);

  fun(s, t);

  printf("\nThe result is : %s\n",t);

  }

  解题思路:

  第一处: 根据试题分析,两个条件之间应该是“或”的关系,而不是“与”的关系,所以应改为:if(i%2 || s[i]%2==0)。

  第二处: 当字符串处理结束后,应该补上字符串的结束符,那么字符串t的位置是由i来控制,所以应改为:t[j]=0;。


热点排行