进制转换,牛牛的空格分隔,牛牛的对齐,进制A+B

目录

一、BC16 十六进制转十进制

二、BC17 缩短二进制(十进制转八进制和十六进制)

三、BC18 牛牛的空格分隔

四、BC18 牛牛的对齐

五、BC20 进制A+B


一、BC16 十六进制转十进制

描述:

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

输入描述:

输出描述:

十六进制整数ABCDEF对应的十进制整数,所占域宽为15。

#include<stdio.h>
int main()
{
	int number = 0XABCDEF;
	printf("%15d", number);
	return 0;
}
  • 域宽:指存放输出数据的宽度,域宽通常插在在百分号和转换说明符之间。
  • 题中15就是域宽
  • %d转换为十进制数
  • 0X标记十六进制数

二、BC17 缩短二进制(十进制转八进制和十六进制)

描述

我们处理的整数通常用十进制表示,在计算机内存中是以二进制补码形式存储,但通常二进制表示的整数比较长,为了便于在程序设计过程中理解和处理数据,通常采用八进制和十六进制,缩短了二进制补码表示的整数,但保持了二进制数的表达特点。请输出十进制整数1234对应的八进制和十六进制。

输入描述:

输出描述:

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

#include<stdio.h>
int main()
{
	int number = 1234;
	printf("%#o ", number);
	printf("%#X", number);
	return 0;
}

三、BC18 牛牛的空格分隔

描述

牛牛从键盘读入一个字符,一个整数,一个单精度浮点数,按顺序输出它们,并用空格分隔,浮点数保留 6 位小数。

输入描述:

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

输出描述:

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

#include<stdio.h>
int main()
{
	char a;
	int b;
	float c;
	scanf("%c %d %f", &a, &b, &c);
	printf("%c %d %.6f", a, b, c);
	return 0;
}

四、BC18 牛牛的对齐

描述

读入 3 个整数,牛牛尝试以后两个数字占 8 个空格的宽度靠右对齐输出。

输入描述:

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

输出描述:

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

#include<stdio.h>
int main()
{
	int a, b, c;
	scanf("%d%d%d", &a, &b, &c);
	printf("%d%8d%8d", a, b, c);
	return 0;
}

五、BC20 进制A+B

描述

输入一个十六进制数a,和一个八进制数b,输出a+b的十进制结果(范围-231~231-1)。

输入描述:

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

输出描述:

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

备注:

十六进制Hexadecimal一般以0x开头,例如0xFF。八进制Octal,一般以0开头,例如07。
#include<stdio.h>
int main()
{
	int a, b,c;
	scanf("%x %o", &a, &b);
	c = a + b;
	printf("%d", c);
	return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值