大家来看看我这仨题吧

1题
从键盘输入一个字符,若该字符是小写字母,输出“该字符 is a lower case letter.”,若该字符是大写字母,输出“该字符 is a capital letter.”,若既不是小写字母也不是大写字母,则输出“该字符 is the other one.”。

输入

一个字符

输出

该字符的类型

样例输入

?

样例输出

? is the other one.

2题

几个偶数,几个奇数。

描述

计算1个整数的各位数字,有几个是偶数,几个是奇数。

输入

一个整数

输出

奇数字个数

偶数字个数

样例输入

12345

样例输出

3

2

3题
真素数。

描述

找出正整数 M 和 N 之间(N 不小于 M)的所有真素数。

真素数的定义:如果一个正整数 P 为素数,且其反序也为素数,那么 P 就为真素数。

例如,11,13 均为真素数,因为11的反序还是为11,13 的反序为 31 也为素数。

输入

输入两个数 M 和 N,空格间隔,1 <= M <= N <= 100000。

输出

按从小到大输出 M 和 N 之间(包括 M 和 N )的真素数,中间用空格间隔,最后一个数后面也要有空格。如果之间没有真素数,则输出 no。

样例输入

10 35

样例输出

11 13 17 31

1.

#include <stdio.h>
int main()
{
    char c;
    scanf("%c", &c);
    if(c >= 'a' && c <= 'z'){
        printf("%c is a lower case letter.",c);
    }else if(c >= 'A' && c <= 'Z'){
        printf("%c is a capital letter.",c);
    }else{
        printf("%c is the other one.",c);
    }
    return 0;
}

2.

#include <stdio.h>
int main()
{
    int n, odd = 0,even = 0;
    scanf("%d", &n);
    while(n > 0){
        int temp = n % 10;
        if(temp % 2 == 0){
            even ++;
        }else{
            odd ++;
        }
        n /= 10;
    }
    printf("%d\n%d",odd,even);
    return 0;
}

3.

#include <stdio.h>
#include <limits.h>
int reverse(int x)
{
    int rev = 0;
    while (x != 0)
    {
        if (rev > INT_MAX / 10 || rev < INT_MIN / 10)
            return 0;
        rev = rev * 10 + x % 10;
        x /= 10;
    }
    return rev;
}

int prime(int n)
{
    int i;
    if (n < 2)
    {
        return 0;
    }
    else
    {
        for (i = 2; i < n; i++)
        {                   //判断n在2~n-1中有没有因数
            if (n % i == 0) //如果用可以除尽的数,则非素数
                break;
        }
        if (i < n)
        { //存在2~n-1之间有因数
           return 0;
        }
        else
            return 1;
    }
    return 0;
}

int main()
{
    int i,m,n;
    scanf("%d%d",&m,&n);
    for(i = m;i <= n;i++){
        if(prime(i) == 1 && prime(reverse(i)) == 1){
            printf("%d ",i);
        }
    }

    return 0;
}