假期刷题打卡--Day11

发布时间:2024年01月23日

一、C语言刷题

1、MT1119大小写的转换

请编写一个简单程序,实现输入字符大小写的转换。其他非法输入(非字母的输入)则原样输出。

格式

输入格式:

输入字符型

输出格式:

输出字符型

样例 1

输入:

A

输出:

a
相关知识点

大写字母 ASCII码比小写字母小 32

大写字母=小写字母 - 32

小写字母=大写字母 + 32

实现代码
#include<bits/stdc++.h> 

using namespace std;

int main( )
{
    char q;
    cin >> q;
    if(q >= 'a' && q <= 'z' || q >= 'A' && q <= 'Z' ){
        if(q >= 'a' && q <= 'z' ){
           cout << char(q - 32);
            // printf("%c",q-32);
        }else{
            cout << char(q + 32) ;
            // printf("%c",q+32);
        }
    }else printf("%c",q);

    return 0;
}

输出的语句有两种,如果使用printf语句输出的话,就需要设置输出的符号位%c,表示输出字符型数据;

如果使用cout语句的话,如果加减32,系统会自动输出为整型,所以如果要实现大小写转换的话,就需要我们自己在输出语句中强制转换。

2、MT1121小码哥考完咯

小码哥考完咯,你是她的老师,请使用switch语句编写一个程序,输出她的分数对应的成绩等级ABCDF。使用以下分级标准:A=90-100,B=80-89,C=70-79,D=60-69,F=0-59。不考虑负数或者其他特殊情况。本题要求使用switch语句。

格式

输入格式:

输入为整型

输出格式:

输出为字符型

样例 1

输入:

99

输出:

A
相关知识点

switch-case语句:

switch (表达式)
{
??? case 常量表达式1:??? 语句1
??? case 常量表达式2:??? 语句2
?????? ┇
??? case 常量表达式n:??? 语句n
??? default:??????? 语句n+1
}

要注意的是case后是常量表达式,而不能是逻辑表达式。

实现代码

使用switch-case语句实现代码

#include<bits/stdc++.h> 

using namespace std;

int main( )
{
    int a;
    cin >> a;
    a/=10;
    switch(a){
        case 10: cout << 'A';break;
        case 9: cout << 'A';break;
        case 8: cout << 'B';break;
        case 7: cout << 'C';break;
        case 6: cout << 'D';break;
        default:cout << "F";
    }

    return 0;
}

另一种方法,使用if-else语句实现代码:

#include<bits/stdc++.h> 

using namespace std;

int main( )
{
    int a;
    cin >> a;
    if(a<=100&&a>=90){
        cout << 'A';
    }else 
    if(a<=89&&a>=80){
        cout << 'B';
    }else
    if(a<=79&&a>=70){
        cout << 'C';
    }else 
    if(a<=69&&a>=60){
        cout << 'D';
    }else
        cout << 'F';
    return 0;
}

3、MT1123元音

请编写一个简单程序,检查输入字符是否为元音

格式

输入格式:

输入字符型

输出格式:

输出Y或者N

样例 1

输入:

A

输出:

Y
相关知识点

元音:a,o,e,i,u

?这个比较简单,但是要记住元音,还有个易错点就是在判断语句中使用“==”,而不是“=”。

实现代码
#include<bits/stdc++.h> 

using namespace std;

int main( )
{
    char a;
    cin >> a;
    if(a=='a'||a=='o'||a=='e'||a=='i'||a=='u'||a=='A'||a=='O'||a=='E'||a=='I'||a=='U'){
        cout << 'Y';
    }else cout << 'N';
    return 0;
}

4、MT1127小码哥的属相

输入小码哥的生日年份(1900~2050),计算输出小码哥的属相生肖(“rat”, “ox”, “tiger”, “rabbit”, “dragon”, “snake”, “horse”, “sheep”, “monkey”, “rooster”, “dog”, “pig”)。不考虑非法输入等特殊情况。

格式

输入格式:

输入整型

输出格式:

输出字符串

样例 1

输入:

1900

输出:

rat
解题思路

这个题目也可以直接使用switch-case语句或者其他方式,具体思路为:输入整数a,定义另一个整数b,b=(a-1900)%12,然后使用switch-case语句解决即可。

实现代码
#include<bits/stdc++.h> 

using namespace std;

int main( )
{
    int a;
    cin >> a;
    int b = (a - 1900)%12;
    switch(b){
        case 0:cout << "rat";break;
        case 1:cout << "ox";break;
        case 2:cout << "tiger";break;
        case 3:cout << "rabbit";break;
        case 4:cout << "dragon";break;
        case 5:cout << "snake";break;
        case 6:cout << "horse";break;
        case 7:cout << "sheep";break;
        case 8:cout << "monkey";break;
        case 9:cout << "rooster";break;
        case 10:cout << "dog";break;
        case 11:cout << "pig";break;
    }
    return 0;
}

明天继续吧

文章来源:https://blog.csdn.net/m0_62263513/article/details/135744981
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。