我想写这两个函数,谁帮我想想,我刚学的,1 判断一个字符是否是字母,字母就是从a-z和A-Z,其他的都不是。
boolean isalpha(char c)
{
  ....
}2写一个函数将字母字符改为大写,如果是大写就不改写了
char toupper(char c)
{
 ...
}

解决方案 »

  1.   

    boolean isalpha(char c){
    return ('a'<= c&&c<='z')||('A'<= c&&c<='Z');
    }
    //
    char toupper(char c)
    {
    return ('A'<=c&&c<='Z')?c:('a'<=c&&c<='z')?(char)(c-32):'X';
    }
      

  2.   

    根据字符的Ascll码来判断,26个小写字母和26个大写字母在Ascll码表中是连续对应的,判断这个字符是否在他们之中,就可以判断是否是字母。。char可以强制转换成int在计算
    System.out.println((int)'c');
    System.out.println('c'-0);  //99   都可以将c字符转化为int第二题小写字母与大写字母他们相差32来转换打小写  具体代码还是得自己练吧
    System.out.println((char)99);//c  int转化成char 或者99-'a'
      

  3.   

    自己练习写写会效果更好。
    Character类里有这两个方法。
    isLetter();toUpperCase();
      

  4.   


    private boolean isalpha(char c)
    {
    return ((c>='a'&&c<='z')||(c>='A'&&c<='Z'));
    }private  char toupper(char c)
    {
    return (c>='a'&&c<='z')?(char)(c-32):c;
    }