PAT 06-2 字符串字母大小写转换

没什么好说的,记得使用ctype.h就好了,谭浩强那本书就介绍了,再不使用就太对不起他老人家了;有一点小小的地方需要注意一下,&&的优先级比=号高,所以getchar()两边没有括号的话呢,你就会看到...我试着用输出重定向(freopen())去获得这个字符,好吧,什么都没有,这叫什么来着,非打印字符,说多了,题设要求及代码实现如下

复制代码
/*
    Name: 
    Copyright: 
    Author: 
    Date: 31/03/15 20:20
    Description: 
输入一个以#结束的字符串,本题要求将小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其它字符不变。

输入格式:

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

输出格式:

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

输入样例:
Hello World! 123#
输出样例:
hELLO wORLD! 123
*/
#include <stdio.h>
#include <ctype.h>

int main()
{
//    freopen("in.txt", "r", stdin); // for text
//    freopen("out.txt", "w", stdout); // for fun
    
    char ch;
    
//    while(ch = getchar()) // for debug
//        putchar(1); // for fun

//    ch = getchar(); // for replace
    while((ch = getchar()) && ch != '#')
    {
        if(isalpha(ch))
        {
            if(isupper(ch))
                ch = tolower(ch);
            else
                ch = toupper(ch);
        }
        putchar(ch);
//        ch = getchar(); for replace
    }
    
//    fclose(stdin); // for test
    fclose(stdout);
    
    return 0;
}
复制代码

 

posted @   自由的青  阅读(496)  评论(4编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示