把输入的字母全部修改成大写字母

img


输入
大小写字母混合
(个数在256个以下)

输出
大写字母


输入
whaT
输出
WHAT


#include<stdio.h>
int main()
{
    char str[256];
    char* p = str;
    gets(str);
    while (*p!='\0')
    {
        if (*p >= 'a' && *p <= 'z')
            *p -= 'a' - 'A';
            p++;
    }
    printf("%s", str);
    return 0;
}

img

public static void main(String[] args) {
        dxx();//调用dxx方法
    }
    public static void dxx(){//dxx方法![在这里插入图片描述](https://img-blog.csdnimg.cn/2021052109522564.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NzI4MzIzMw==,size_16,color_FFFFFF,t_70)

        Scanner s = new Scanner(System.in);//new一个输入对象
        System.out.println("请输入要进行大小写转换的字母:");
        String sr = s.next();//让用户输入
        char [] c =sr.toCharArray();//把用户输入的字符串转化为char类型数组,就是把每一个单独抽出来,放到一个char类型的数组里面
        for (int i = 0; i <c.length ; i++) {
            if (Character.isUpperCase(c[i])){//通过for循环判断每一个索引的字母是否大写
                c[i]+=32;//大写字母ASCLL编码比小写的小32
            }else{
                c[i]-=32;//反之如果是小写加32
            }
        }
        for (int i = 0; i < c.length; i++) {
            System.out.print(c[i]);//把数组遍历打印出来
        }
    }

按你说的把输入的字母全部修改成大写字母

如下:

#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>

int main()
{
    char a[256];
    int i = 0;
    scanf("%s", a); //读取
    while (a[i] != '\0')
    {
        if (a[i]>='a' && a[i]<='z')
            printf("%c", a[i]-32);
        else
            printf("%c", a[i]);
        i++;
    }
    return 0;
}