下列给定程序中,函数fun()的作用是,将字符串tt中的大写字母都改为对应的小写字母,其他字符不变。例如,若输入"Ab,cD",则输出"ab, cd"。 请改正函数fun()中的错误,使它能得出正确的结果。 注童:不要改动main函数,不得增行

admin2010-05-05  54

问题 下列给定程序中,函数fun()的作用是,将字符串tt中的大写字母都改为对应的小写字母,其他字符不变。例如,若输入"Ab,cD",则输出"ab, cd"。
   请改正函数fun()中的错误,使它能得出正确的结果。
   注童:不要改动main函数,不得增行或删行,也不得更改程序的结构。
   试题程序:
   #include <stdio.h>
   #include <string.h>
   #include <conio.h>
   char *fun (char tt[])
   {
    int i;
    for(i=0; tt; i++)
   /**************found**************/
     { if((’A’ <=tt||(tt<=’z’  ))
      tt+=32;  }
    return(tt);
   }
   main()
   {int i;
    char tt[81];
    clrscr();
    printf("\nPlease enter a string:");
    gets(tt);
    printf("\nThe result string is:\n %s", fun(tt));
   }

选项

答案错误:if((’A’ <=tt[i]||(tt[i]<=’Z’)) 正确:if((tt[i]>=’A’)&&(tt[i]<=’Z’))

解析 从ASCII码表中可以看出,小写字母的ASCII码值比对应大写字母的ASCII码值大32。将字符串中的大写字母改为小写字母的方法是,从字符串第1个字符开始,根据ASCII码值判断该字母是不是大写字母,若是,则ASCII码值加32即可;重复执行以上过程直至字符串尾。本题可利用条件选择语句和循环语句来实现。
转载请注明原文地址:https://kaotiyun.com/show/yHID777K
0

相关试题推荐
最新回复(0)