1. CPU 内存条 硬盘 显卡 主板 显示器 之间的关系
2.HelloWorld程序如何运行起来的
#include <stdio.h>
int main(void)
{
printf("Hello World!");
return 0;
}
3.什么是数据类型
>基本类型数据
- 字符
字符 char 1
- 整数
短整形 short int 2
整数 int 4
长整形 long int 8
- 浮点数【实数】
单精度浮点数 float 4
双精度浮点数 double 8
>复合类型数据
- 结构体
- 枚举
- 共用体
4.什么是变量
变量的本质就是内存中一段存储空间
5.变量为什么必须要初始化
所谓初始化就是赋值的意思,不赋值变量会存储垃圾值
6.如何定义变量
数据类型 变量名 = 要赋的值;
等价于
数据类型 变量名;
变量名 = 要赋的值;
举例子:
int i = 3; 等价于 int i; i = 3;
int i, j; 等价于 int i; int j;
int i, j = 3; 等价于 int i; int j; j = 3;
int i = 3, j = 5; 等价于 int i; int j; i = 3; j = 5;
int i, j; i = j = 5; 等价于 int i, j; i = 5; j = 5;
7.什么是进制
>n进制就是逢n进一
>把r进制转成十进制
>把十进制转成r进制
>不同进制所代表的数值之间的关系
十进制的3981 转化成 十六进制是F8D
十进制的3981 和 十六进制的F8D 所代表的本质都是同一个数字
8.常量在C语言中是如何表示的
>整数
- 十进制: 传统的写法
- 十六进制: 前面加0x或者0X
- 八进制: 前面0
/*(注意是数字零不是字幕O)*/
>浮点数
- 传统的写法
float x = 3.2; //传统
- 科学计数法
float x = 3.2e3; //x的值是3200
float x = 123.45e-2;//x的值是1.2345
>字符
- 单字符用单引号括起来
'A'表示字符A
'AB' 错误
- 字符串用双引号括起来
"AB" 正确
"A" 正确,因为"A"代表了'A' '\0' 的组合
9.常量以什么样的二进制代码存储在计算机中
>整数是以补码的形式转化为二进制代码存储在计算机中的
>实数是以IEEE754标准转化为二进制代码存储在计算机中的
>字符的本质实际也是与整数的存储方式相同
10.代码规范化
>代码的可读性更强【容易让自己和别人更清楚的看懂程序】
>使程序更不容易出错
11.什么是字节
字节就是存储数据的单位,并且是硬件所能返问的最小单位
1 (字节) = 8 ( 位 )
1 ( K ) = 1024 (字节)
1 ( M ) = 1024 ( K )
1 ( G ) = 1024 ( M )
12.不同类型数据之间相互赋值的问题
/*暂不考虑*/
int i = 45;
long j = 102345;
i = j;
printf("%ld %d\n", i, j);
float x = 6.6;
double y = 8.8;
printf("%f %lf\n", x, y);
13.什么是ASCII
ASCII不是一个值,而是一种规定,
ASCII规定了不同的字符是使用哪个整数值去表示
它规定了:
'A' —— 65
'B' —— 66
'a' —— 97
'b' —— 98
'0' —— 48
14.强制类型转化
格式:
(数据类型) (表达式)
功能:
把表达式的值强制转化为前面所执行的数据类型
例子:
(int) (4.5 + 2.2) 最终值是:6
(float) (5) 最终值是:5.000000
15.浮点数的存错所带来的问题
>float和double都不能保证可以把所有的实数都准确的保存在计算机中
- 例子:
float i = 99.9;
printf("%f\n", i);
/*
在Microsoft Visual Studio 2010的过程:
-----------------------------------
99.900002
请按任意键继续. . .
-----------------------------------
*/
>因为浮点数无法准确存储,所以就衍生出来两个编程问题
- 有一个浮点型变量x,如何判断x的值是否是零
if (|x - 0.000001| <= 0.000001)
是零;
else
不是零;
- 为什么循环中更新的变量不能定义成浮点型
16.二进制全部为零的含义 —— 0000000000000 的含义
>数值零
>字符串结束标记符'\0'
>空指针NULL
NULL本质也是零,而这个零不代表数字零,而表示的是内存单元的编号零
我们计算机规定了,以零为编号的存储单元的内容不可读,不可写
17.字符的存储【字符本质上与整数的存储方式相同】
如有不对或者疏漏的地方,请多多指出。谢谢(⁄ ⁄•⁄ω⁄•⁄ ⁄)