崔尼玛的博客

崔大脑袋的一亩三分地
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一个字符串操作题目

Posted on 2013-09-09 21:59  崔尼玛  阅读(727)  评论(2编辑  收藏  举报

要求:将大写字母改成小写,将小写字母改成大写,数字不变,删除其他字符;

char* change(char str[],int n)

{

    int i,j;

    char *pres=new char[n];

    for(i=0,j=0;i<n;i++)

    {

        // 如果是大写,转成小写

        if(str[i]>='A' && str[i]<='Z')

        {

            *(pres+j)=str[i]+32;

            j++;

        }

        //如果是小写,转成大写

        else if(str[i]>='a' && str[i]<='z')

        {

            *(pres+j)=str[i]-32;

            j++;

        }

       //如果是数字则保留

        else if(str[i]>='0' && str[i]<='9')

        {

            *(pres+j)=str[i];

            j++;

        }

    }

    *(pres+j)='\0';

    return pres;

}

 

void main()

{

    char *pstr="A2sfADd$aA^%DdaADHa_e";

    char *pr=change(pstr,strlen(pstr));

    cout<<"main:"<<pr<<endl;

}