标签:getch dash 组成 bsp asc 程序 .com put ble
数据类型的定义
变量的定义:
数据类型 变量名【标识符】
变量的赋值:
变量名 = 值;
数据类型 变量名【标识符】 = 值
标示符的命名规则:
1、字母、数字、下划线
2、不能以数字开头
3、见名知义
4、不能和同一函数内的其他标示符重复
5、不能使用C语言关键字
6、区分大小写
标示符:
ABC
abc
—abc
_abc.
123_bac
a_b_123
常量的定义:
1、const 数据类型 常量名
2、【宏定义】#deifne 常量名 值
注意:
1、通过#define 定义的常量 是根据值来匹配数据类型的
2、const 修饰的常量是不安全 可以通过指针来修改
2、进制:
二进制:
二进制逢二进一,所有的数组是0、1组成
十进制转二进制:
除二反序取余法:将十进制数每次除以2 取出余数 按照结果倒叙依次获取结果
二进制转十进制:
权值法:将二进制数各个位数从0位开始乘以2的N幂 将各个位数的结果相加
八进制:
八进制逢八进一,所有的数组是0到7组成
十进制转八进制:
除八反序取余法:将十进制数每次除以8 取出余数 按照结果倒叙依次获取结果
十六进制:
十六进制逢十六进一,所有的数组是0到9和A到F组成 字母不区分大小写
十进制转八进制:
除十六反序取余法:将十进制数每次除以16 取出余数 按照结果倒叙依次获取结果
原码、反码、补码
一个有符号的整型数据可以分为两部分一部分是符号位、一部分是数字位
无符号数据类型只包含数字位部分
signed int a= 1986(有符号标识 signed可以不用写)
二进制:11111000010
1986原码:0000 0000 0000 0000 0000 0111 1100 0010
-1986原码:1000 0000 0000 0000 0000 0111 1100 0010
1986反码: 0000 0000 0000 0000 0000 0111 1100 0010
-1986反码:1111 1111 1111 1111 1111 1000 0011 1101
1986补码: 0000 0000 0000 0000 0000 0111 1100 0010
-1986反码:1111 1111 1111 1111 1111 1000 0011 1110
1 0000 0000 0000 0000 0000 0000 0000 0000
溢出:在数据进行操作的时候会导致超出数据类型大小,会向前位进1,多于原始数据类型大小,会被系统自动舍弃 保留从后面开始数据类型大小的位数
sizeof()
求出数据类型在内存中占的大小(BYTE)
int value =sizeof(变量名);
int value = sizeof(数据类型) sizeof 数据类型
注意:根据32位操作系统获取的数据类型大小
char(字符型)【1】<short(短整型)【2】
<=int(整型)【4】|float (单精度浮点型)【4】|long(长整型)【4】
<long long(长长整型)【8】|double(双精度浮点型)【8】
输出和输入:
输出字符的两种方式:
1、printf("%c",变量)
2、putchar(字符)
输入字符的两种方式:
1、scanf("%c",&b变量)
2、变量=getchar()
数据类型:
字符型:
char 用于存储一个单一的字符
在格式化输入printf("%c",变量)通过占位符%c来接收的
每一个char类型都对应在ASCII中有具体的值
例如:数字【0】对应的ASCII值为48
字母【A】对应的ASCII值为65
字母【a】对应的ASCII值为97
转义字符:
计算机会使用一些字符来完成程序设计,如果在编程中想使用这些字符的本意,需要通过【\】来转义
注意:想在控制台中输出% 需要使用【%%】
浮点型:
float 用于存储带有小数的数据在格式化输入printf("%f",变量)通过占位符%f来接收的
double 用于存储带有小数的数据 数据长度比float更长注意:因为将小数转化为二进
制时不是一个精确的值,所以浮点型都会有数据偏差
练习:
- 八进制必须以__0___开头,十六进制必须以___0x____开头。
- 标识符只能由___字母____、____数字___和____下划线___组成。
- 在计算机中的进制表现形式有三种,分别是__二进制___、 __八进制_____、 ____十六进制____。
- C 语言提供了 sizeof 运算符,该运算符主要用于___计算一个数据类型的大小_____。
- 二进制和八进制相互转换
111 010 101 011 转换为八进制后结果为? 76321 转换为二进制结果为?
7 2 5 3 111110011010001
6.二进制和十六进制相互转换
1111 1010 1101 1011 转换为十六进制后结果为?
a6b2f1 转换为二进制结果为?
f a d b 101001101011001011110001
7.请写出-8的原码、反码、补码
10001000 11110111 11111000
8.
计算如下程序结果
short a = 0xfffe;
printf("%d\n", a); //结果为多少? -2
unsigned short a = 0xfffe;
printf("%u\n", a); //结果为多少? 65534
short a = 0x7fff + 2;
printf("%d\n", a); //结果为多少? -32767
unsigned short a = 0xffff + 5;
printf("%u\n", a); //结果为多少 4
No.4 C语言基础
标签:getch dash 组成 bsp asc 程序 .com put ble
原文地址:https://www.cnblogs.com/yangchenyu2000/p/10668223.html