某坑爹公司的笔记_Day03
来源:互联网 发布:海量大数据 面试 编辑:程序博客网 时间:2024/04/28 02:54
一、数据类型
1.数据类型分类
a.基本数据类型
b.引用数据类型(后续再讲)
2.基本数据类型
在C语言中,基本数据类型有四种:char、int、float、double。
二、字符型 char
1.底层存储是整数,是字符表(ASC)里面的编码。
2.二进制数<==>整数<==>ASC(字符)
3.ASC:American Standard Code
4.UTF8:全世界主流语言编码
5.计算机默认情况只支持ASC
6.常见字符:
‘A’= 65、’a' = 97、’0' = 48
1.char代表一个字符’ '括起来,占位8位(8bit)内存,8位二进制数占用1个字节(1byte)空间。
2.位bit:描述二进制数的位数
3.字节byte:描述占存储器的空间大小
输出函数printf输出char类型变量内容,所使用占分符为%c输出数据
三、输入函数scanf 键盘->程序
1)通过键盘向程序传输数据,等待(阻塞)用户输入。直到用户输入完毕,默认以回车为用户输入结束。
control+c 强制停止程序运行
2)语法格式 scanf(”%c",&ch);输入函数
参数1 对应数据类型占位符
参数2 取变量地址,将键盘输入的数据存在
相应地址中
scanf("%*c");//清空缓冲存
四、转义符 \
在做字符类型数据处理时,一些特殊的符号,需要转义处理。(特殊符号:与系统定义的语法符号冲突),转义处理,就会用到"\"符号,就是转义符。
常用的转义符处理:
\n 换行字符(下一行行首)
\r 回车字符(本行行首)
\t 制表符(相当于按tab)
点一下空格 等于一个字符
点一下tab 等于8个空格字符
\\ 斜杠字符
\' 单引号字符
\" 双引号字符
五、数据的取值范围
1.数据范围
unsigned(无符号) char 8位 1字节 0~255
char(有符号)char 8位 1字节 -128 ~ (0)127
2.有符号:最高位为符号位
3.溢出:超出最大值的范围,从最小值开始计算,超出最小值的范围,从最大值开始计算。
六、整型 int
1.int代表16位或32位二进制数,short/long修饰。
2.short (int) 16位,long (int)32位,long long long int 代表就是64位整数。推荐int类型描述整数。
3.signed int 第一位就是符号位。
在C语言中,整数有二进制数、八进制数、十进制数、十六进制数。
二进制数,以值0标识为开始,到1结束,当为2时会向前进一位。
十进制数,以值0标识为开始,到9结束,当为10时会向前进一位。
八进制数,以值0标识为开始,到7结束,当为8时会向前进一位。
十六进制数,以值0标识为开始,到15结束,当为16时会向前进一位。A10B11C12D13E14F15
七、进(数)制转换自动
1.赋值
int i = 11;//默认 十进制
int i2 = 011;//八进制
int i3 = 0x11;//十六进制
2.输出
printf("i:%d i:%o i:%x\n",i,i,i);
取值范围
1.short 16位 2字节 有符号 -32768~32767
2.unsigned short 16位 2字节 无符号 0~65535
3.long 32位 4字节 有符号 -2^31~2^31-1(+-21亿)
4.unsigned long 32位 4字节 无符号 0~2^32-1
八、浮点型 float/double
1.有整数和小数两个部分组成
2.C语言中,浮点型包括float、double、long double。
float 32位 4字节 2^32
double 64位 8字节 2^64
long double 96位 12字节 2^96
输出结果时,使用占位符
%f->float
%lf->double %g
%.2f输出的结果保留两位小数
九、数(进)制转换
1.进制转换是人们利用符号来计数的方法,包含有多种数据转换,进制转换由一组数码符号和两个基本因素(位与权),进制包括二进制、十进制、八进制、十六进制。
2.二进制和十进制
a、位与权
9 3 位 = 3*1+9*10
10 1 权
b、整数93在一个字节中的二进制存储方式
0 1 0 1 1 1 0 1 位
128 64 32 16 8 4 2 1 权
c、零和正数:符号位为最高位值0
1)二进制转换成十进制:一位加权 零位不见
01011101=1+4+8+16+64=93
01101101=109
2)十进制转换成二进制:有权添一 无权补零
93=0101 1101
93-64=29-16=13-8=5-4=1-1=0
[当日测试题]
1.char型变量在内存中存放的是:
A)ASCII码 B)原码 C)内码值 D)十进制代码值
2. 关于C语言的说法错误的是()
A.C程序的工作过程是编辑、编译、连接、运行
B.C语言不区分大小写
C.C程序的三种基本结构是顺序、选择、循环
D.C程序从main函数开始执行
3. C语言中整数-8在内存中存储形式是:
A)1111,1111,1111,1000 B)1000,0000,0000,1000
C)0000,0000,0000,1000 D)1111,1111,1111,0111
4.C语言提供的合法的数据类型关键字是:
A) Double B) short C) integer D) Char
5. 在C语言中,合法的字符常量是:
A. ‘\084' B)‘\x43' C) 'ab' D)“\0”
6.下列程序执行后的输出结果是
A) G B) H C) I D) J
main(){
int x='f';
printf("%c\n",'A'+(x-'a'+1));
}
- 某坑爹公司的笔记_Day03
- struts2笔记_day03
- 某坑爹公司的笔记_Day02
- 某坑爹公司的笔记_Day04
- 某坑爹公司的笔记_Day05
- 某坑爹公司的笔记_Day06-Day11
- 在公司的学习笔记
- 黑马程序员_day03 函数。
- MySQL之旅_Day03
- 自定义控件_day03
- Java基础_Day03
- MySQL知识_day03
- java学习_day03
- 公司笔记
- Telerik公司的RadControls控件学习笔记
- 黑马程序员--Oracle学习_day03
- Android_黑马视频学习_day03
- IT公司面试——我的面试笔记
- struts2拦截器(拦截指定方法
- Exchange Server 2003
- C++之拷贝构造函数
- 香港自由行之:个人如何赴港旅游
- 字节序基础知识
- 某坑爹公司的笔记_Day03
- Catalan数(二)
- 微软企业库Unity依赖注入
- javascript递归实现定时器
- hdoj 1556
- ndk-stack 学习使用
- c++学习笔记之纯虚函数
- harris
- 周鸿祎:做产品体验先把自己切换到二傻子模式