Bootstrap

ZZNUOJ 1798:大小写判断(C/C++/Java)

题目描述

给定一个英文字母判断这个字母是大写还是小写。

输入

输入只包含一个英文字母c。

输出

如果c是大写字母,输出“upper”,否则输出“lower”。

样例输入

x

样例输出

lower

来源

蓝桥杯算法训练

在这里插入图片描述
常见的ASCII
ASCII表中可以记下部分特殊的值(十进制)(字母从AZ,从az,ASCII值依次递增)

C算法源码:

#include <stdio.h>

int main() {
    char c;
    scanf("%c", &c); 
    if (c >= 'A' && c <= 'Z') {
        printf("upper"); // upper是大写英文字母
    } else if (c >= 'a' && c <= 'z') {
        printf("lower"); // lower是小写英文字母
    }
    return 0;
}

还有可以用关键字 - 函数,看下下面这代码有注释

#include <stdio.h>

#include<ctype.h> // 加上这头文件
// ctype.h是C标准库头文件之一,提供了一组用于测试和转换字符的函数。这些函数可以用于检查字符类型(如是否是字母、数字等)以及转换字符的大小写。

int main() {
    char c;
    scanf("%c", &c);
    if (isupper(c)) { // isupper()函数:判断字符是否为大写英文字母
        printf("upper");
    } else if (islower(c)) { // islower()函数:判断字符是否为小写英文字母
        printf("lower");
    }
    return 0;
}

C++算法源码:

#include <bits/stdc++.h>
using namespace std;

int main() {
    char c;
    cin >> c;
    if (isupper(c)) {
        cout << "upper";
    } else if (islower(c)) {
        cout << "lower";
    }
}

Java算法源码:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        char c = in.next().charAt(0);
        if (Character.isUpperCase(c)) {
            System.out.print("upper");
        } else if (Character.isLowerCase(c)) {
            System.out.print("lower");
        }
        in.close();
    }
}
;