数组-05. 字符串字母大小写转换(10)

来源:互联网 发布:网络社会的崛起 编辑:程序博客网 时间:2024/05/17 07:17

输入一个以#结束的字符串,本题要求将小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其它字符不变。

输入格式:

输入在一行中给出一个长度不超过40的、以#结束的非空字符串。

输出格式:

在一行中按照要求输出转换后的字符串。

输入样例:
Hello World! 123#
输出样例:
hELLO wORLD! 123

#include<stdio.h>#include<string.h>#include<iostream>using namespace std;int main(){    char str[41];    int i;    cin.getline(str,41,'#');//以#结束    int len=strlen(str);    for(i=0;i<len;i++){        if(str[i]>='A'&&str[i]<='Z')            str[i]=str[i]+32;//大小写ASC码相差32        else if(str[i]>='a'&&str[i]<='z')            str[i]=str[i]-32;        else            str[i]=str[i];  //不是字母不作处理    }    puts(str);return 0;}

cin.getline();
此函数会一次读取多个字符(包括空白字符)。它以指定的地址为存放第一个读取的字符的位置,依次向后存放读取的字符,直到读满N-1个,或者遇到指定的结束符为止。若不指定结束符,则默认结束符为’\n’。其语法为:
cin.getline(字符指针(char*),字符个数N(int),结束符(char));
cin.getline(str,41,’#’);

0 0
原创粉丝点击