就业数据资源平台
当前位置:首页 > C语言程序设计
计算机二级C语言上机考试改错题及答案2

改错题
  下列给定程序中,函数fun的功能是:将大写字母转换为对应小写字母之后的第五个字母;若小写字母为v~z,使小写字母的值减21.转换后的小写字母作为函数值返回.例如,若形参是字母A,则转换字母为小写字母f;若形参是字母W,则转换为小写字母b.
  请改正函数fun中的错误,使它能得出正确的结果。
  注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
  #include <stdio.h>
  #include <ctype.h>
  char fun(char c)
  {
  /********found********/
  if (c>='A' && c<='Z') 来源:www.examda.com
  c = c-32;
  /********found********/
  if (c>='a' && c<='u')
  c = c-5;
  else if (c>='v' && c<='z')
  c = c-21;
  return c;
  }
  main()
  {
  char c1, c2;
  printf("\nEnter a letter(A-Z): ");
  c1 = getchar();
  if (isupper(c1))
  {
  c2 = fun(c1);
  printf("\n\nThe letter %c change to %c\n", c1, c2);
  }
  else
  {
  printf("\nEnter (A-Z)!\n");
  }
  }
  参考答案:
  第1处:c=c-32;应改为c=c+32;
  第2处:c=c-5; 应改为 c=c+5;
就业数据资源平台