练习c,,,

一、输入一个人的出生日期(包括年月日),将该生日中的年、月、日分别输出。

数据范围:年份满足 1990 \le y \le 2015 \1990≤y≤2015 ,月份满足 1 \le m \le 12 \1≤m≤12  ,日满足 1 \le d \le 30 \1≤d≤30 

输入描述:

输入只有一行,出生日期,包括年月日,年月日之间的数字没有分隔符。

输出描述:

三行,第一行为出生年份,第二行为出生月份,第三行为出生日期。输出时如果月份或天数为1位数,需要在1位数前面补0。

int main()
{
    int yy, mm, dd;
    scanf("%4d%2d%2d", &yy, &mm, &dd);
    printf("year=%04d\nmonth=%02d\ndate=%02d", yy, mm, dd);
    return 0;
}

 二、

实现字母的大小写转换。多组输入输出。

输入描述:

多组输入,每一行输入大写字母。

输出描述:

针对每组输入输出对应的小写字母。

#include <stdio.h>

int main() {
    char A = 0;
    //EOF意为-1。本语句即只要输入项是字符即可打印
    while ((A = getchar()) != EOF) {
        //因为回车也算一个字符,所以在输入第一个字符换行后,getchar会读取换行的回车键
        //换行的回车被读取,若防止回车被读取,可在其前面多读取一次消耗回车        
        getchar();
        if (A >= 'A' && A <= 'Z') {
            putchar(A + 32);
            printf("\n");
        }
        else {
            putchar(A - 32);
            printf("\n");
        }
    }
}

三、

BoBo写了一个十六进制整数ABCDEF,他问KiKi对应的十进制整数是多少。

int main()
{
    int a = 0xABCDEF;
    printf("%15d\n", a);
    return 0;
}

四、十进制整数1234对应的八进制和十六进制(字母大写),用空格分开,并且要求,在八进制前显示前导0,在十六进制数前显示前导0X

实际上就是加上个#,然后就显示前缀,还有16进制的那个大写,就是把x大写就完事了

int main()
{
    int a = 1234;
    printf("%#o %#X",a ,a);
    return 0;
}

 五、

输入描述:

读入一个字符,一个整数,一个单精度浮点数用换行符隔开,

输出描述:

按顺序输出字符、整数、单精度浮点数,用空格分隔,浮点数保留 6 位小数

int main() 
{
    char a = 0;
    int b;
    float c;
    
    scanf("%c", &a);
    getchar();
    scanf("%d", &b);
    getchar();
    scanf("%f", &c);
    
    printf("%c %d %.6f\n", a, b, c);
    
    return 0;
}

 

六、

输入描述:

输入三个整数,用空格隔开。

输出描述:

输出 3 个整数以第二三个数字占 8 个空格靠右对齐输出

 

int main()
{
    int a, b, c;
    scanf("%d %d %d",&a, &b, &c);
    printf("%-8d%-8d%-8d", a, b, c);
    return 0;
}

 七、

输入描述:

一行,一个十六进制数a,和一个八进制数b,中间间隔一个空格。

输出描述:

一行,a+b的十进制结果。

int main()
{
    int a, b;
    scanf("%x %o", &a, &b);
    printf("%d\n", a+b);
    return 0;
}

7.21

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值