2011年计算机二级C语言第七十一套上机题库及答案

来源:计算机等级考试    发布时间:2012-08-28    计算机等级考试视频    评论

  三、程序题:请编写一个函数fun, 其功能是: 将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母, 则不转换)。

  例如, 若输入"abc4EFg",则应输出"aBc4EFg"。

  注意: 部分源程序在文件PROG1.C文件中。

  请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。

  给定源程序:

  #include

  #include

  void fun(char *ss)

  {

  }

  void main(void)

  {

  char tt[51];void NONO ();

  printf("/nPlease enter an character string within 50 characters:/n");

  gets(tt);

  printf("/n/nAfter changing, the string/n /"%s/"", tt);

  fun(tt);

  printf("/nbecomes/n /"%s/"", tt);

  NONO();

  }

  void NONO ()

  {

  /* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。 */

  char tt[51], ch;

  FILE *rf, *wf ;

  int len, i=0 ;

  rf = fopen("in.dat","r");

  wf = fopen("out.dat","w");

  while(i < 10) {

  fgets(tt, 50, rf);

  len = strlen(tt) - 1 ;

  ch = tt[len] ;

  if(ch == '/n' || ch == 0x1a) tt[len] = 0 ;

  fun(tt);

  fprintf(wf, "%s/n", tt);

  i++ ;

  }

  fclose(rf);

  fclose(wf);

  }

  参考答案:

  void fun( char *ss )

  {

  char *p = ss ;

  int i = 0 ;

  while(*p) {

  if((i % 2) && (*p >= 'a' && *p <= 'z')) *p -= 32 ;

  p++ ;

  i++ ;

  }

  return ss ;

  }

上一页123下一页

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答