PAT MOOC-C 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;
}
时间: 2024-10-19 16:36:51

PAT MOOC-C 06-2 字符串字母大小写转换的相关文章

*数组-05. 字符串字母大小写转换

1 /* 2 * Main.c 3 * E5-数组-05. 字符串字母大小写转换 4 * Created on: 2014年8月20日 5 * Author: Boomkeeper 6 *********部分通过********* 7 */ 8 9 #include <stdio.h> 10 11 int main(void){ 12 13 char str[40]={-1}; 14 15 gets(str); 16 17 int i,index; 18 for(i=0;i<40;i++

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

输入一个以#结束的字符串,本题要求将小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其它字符不变. 输入格式: 输入在一行中给出一个长度不超过40的.以#结束的非空字符串. 输出格式: 在一行中按照要求输出转换后的字符串. 输入样例: Hello World! 123# 输出样例: hELLO wORLD! 123 import java.util.Scanner; public class Main { public static void main(String[] args) {

06-2. 字符串字母大小写转换(10)

输入一个以#结束的字符串,本题要求将小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其它字符不变. 输入格式: 输入在一行中给出一个长度不超过40的.以#结束的非空字符串. 输出格式: 在一行中按照要求输出转换后的字符串. 输入样例: Hello World! 123# 输出样例: hELLO wORLD! 123 1 #include <stdio.h> 2 3 int main() 4 { 5 char s[40]; 6 int i = 0; 7 do { 8 scanf(&qu

js字符串字母大小写转换

toLocaleUpperCase 方法 返回一个字符串,其中所有的字母字符都被转换为大写,同时适应宿主环境的当前区域设置. stringVar.tolocaleUpperCase( )必选的 stringVar 引用是一个 String 对象,值或文字. 说明toLocaleUpperCase 方法转换字符串中的字符,同时适应宿主环境的当前区域设置.在大多数情况下,其结果与利用 toUpperCase 方法所得到的结果是一样的.然而,如果语言规则与常规的 Unicode 大小写映射方式冲突,那

excel 英文字母大小写转换

excel 英文字母大小写转换 CreateTime--2018年5月26日18:20:06 Author:Marydon 1.英文字母转大写 将A列小写转大写 语法说明: upper(单元格标识),会将指定单元格的内容全部转换成大写,并将内容输出到光标所在单元格. 第一步:在B列输入=upper(A4)-->回车 第二步:选中该单元格-->鼠标移动有单元格的右下角,会出现一个+符号,一直往下拖拽: ==========================下面是去除B列对A列的依赖========

字母大小写转换

                             字母大小写转换   问题描述 给定一个英文字母判断这个字母是大写还是小写.输入格式 输入只包含一个英文字母c.输出格式 如果c是大写字母,输出“upper”,否则输出“lower”.样例输入x样例输出lower样例输入B样例输出upper    代码: import java.util.*;public class ZIMUDAXIAOXIE {     public static  String ConverString(String

5.6.3.5 字符串的大小写转换

ECMAScript中涉及到字符串的大小写转换的方法有4 个:toLowerCase().toLocaleLowerCase().toUpperCase()和toLocaleUpperCase().其中,toLowerCase()和toUpperCase()是两个经典的方法,借鉴自java.lang.String中的同名方法.而 toLocaleLowerCase()和toLocaleUpperCase()方法则是针对特定地区的实现.对有些地区来说,针对地区的方法与其通用的方法得到的结果相同,但

Java基础——字母大小写转换

案例: 要求从控制台接收用户输入的一个字母,如果这个字母是小写,转换为大写:如果这个字母是大写,转换为小写:只能输入字母,如果是其他值,提示数据有误! 实现代码: import java.util.Scanner; /** * 常见字母大小写转换 * 原理: * 字符char采用的是Unicode编码的16位字符类型,其表示范围是0-65536.标准的8位ASCII字符集是Unicode * 的子集,其取值范围为0-127.大小写字母之间正好相差32 * @author Administrati

Eddy&#39;s mistakes(字母大小写转换)strlwr函数的应用

Problem Description Eddy usually writes  articles ,but he likes mixing the English letter uses, for example "computer science" is written frequently "coMpUtEr scIeNce" by him, this mistakes lets Eddy's English teacher be extremely disc