C语言学习(2023.1.1)

数据类型

摘要:
数据类型一般分为浮点型和整型,本轮笔记主要记录他们的异同以及相互转换。
主要内容:
1、二进制
二进制为逢二进一的数制,是在计算机中常用的数制。难点:二进制运算规则、二进制转换十进制、十进制转二进制。
2、八进制
八进制为逢八进一的数制。在C语言中一般以数字0开头,例如:04、017等。
3、十六进制
十六进制为逢十六进一的数制。在C语言中一般以数字0x开头,例如:0x1A、0xFF等。
4、数制转换
函数的格式控制参数(常用于printf):
函数的格式控制参数
例子:

#include<stdio.h>
int main(void)
{
	unsigned int x = 12;
	unsigned int y = 012;
	unsigned int z = 0x12;
	printf("十进制%u转换为 八进制%o 十六进制%x\n", x, x, x);
	printf("十进制%u转换为 八进制%o 十六进制%x\n", y, y, y);
	printf("十进制%u转换为 八进制%o 十六进制%x\n", z, z, z);
	return 0;
}

结果为:
例1结果
5、整型
整型,指整型数据。分为七类:字符型、短整型、整型、长整型、无符号短整型、无符号整型和无符号长整型
在这里插入图片描述
各个不同整型的所占字节数及其取值范围:
在这里插入图片描述
注:
(1)对于有符号数与无符号数,有符号数以最高位来记录数字的符号,而无符号数则不用。
(2)在将过大的数据范围的变量(如int)赋值给过小的数据变量(如char)时,会造成数据的溢出。
在这里插入图片描述
6、字符型
字符型是整型数据的一种,存储的是单个字符,占一个字节、八位。如‘A’、‘5’等。字符型的输出可用“%c”和“%u”,前者用于输出字符本身,后者用于输出其ASCII码。
字符型中的转义符应用:
在这里插入图片描述

7、浮点型
浮点型是除了整型外的另一种数据类型,用于表示有小数部分的数据。浮点型包含三种数据类型:单精度float、双精度double、长双精度long double。
浮点型的位数、有效数字和取值范围:
在这里插入图片描述
注:
(1)当对两个差别非常大的数值做求和运算时,小数据不会对结果造成影响。
(2)当表达式中存在double类型数值时,或无明确类型转换的情况下,表达式的数据类型为double。
在这里插入图片描述
or
在这里插入图片描述
浮点数据不但能用小数表示也能用指数形式:
在这里插入图片描述
注:
*两个差距小于0.001的数值在float浮点型中属于相等。
8、类型转换
(1)隐式转换
隐式转换优先级图
例如:

#include<stdio.h>
int main(void)
{
	int i;
	i = 1 + 2.0 * 3 + 1.234 + 'c' - 'A';
	printf("%d", i);
	return 0;
}

输出结果为42。
(2)显式转换

#include<stdio.h>
int main(void)
{
	float f1, f2;
	f1 = (int)1.2 + 3.4;
	f2 = (int)(1.2 + 3.4);
	printf("f1=%f\tf2=%f", f1, f2);
	return 0;
}

结果为:
f1=4.400000等同于1+3.4。
f2=4.000000等同于(int)4.6。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值