第1节 C语言概述
一.为什么要学C语言? 1.C语言的发展
2.C语言的优点
代码量小 速度快 功能强大
C语言的缺点
危险性高
开发周期长
可移植性不强
3.老师说: 一个人他老不问为什么,坦白来说他不可能学的很好!
第2节 C语言预备知识
1.Cpu 内存条 硬盘 显卡 主卡显示器之间的关系
2.Helloword程序是如何运行的
3.什么是数据类型
基本数据类型 整数 整型 —— int 短整型 —— short int 长整型 —— long int
浮点数 单精度浮点数 —— float 双精度浮点数 —— double
字符 单个字符 —— char 字符串 —— 字符数组表示(我们不能把字符串赋给单个字符变量)
4.什么是变量
变量的本质就是一段存储空间 由于在程序运行过程中变量的物理内存地址固定不变,变量又和物理内存对应,故我们可以将变量理解为是一个物理内存地址的常量。
5.CPU 内存条
6.变量为什么必须初始化
所谓初始化就是赋值的意思
7.什么是进制
n进制 —— 逢n进一
8.常量在C语言中是如何表示的
整数 十进制 —— 传统的写法 十六进制—— 前面加0X或0x 八进制 —— 前面加0(注意是是数字0而不是字母o或O)
浮点数 传统的写法 Flaot x = 3.2; 科学计数法 Float x = 3.2e3; //x的值是3200 Float x = 123.45e-2;//x的值是1.2345
字符 单个字符用单引号括起来 字符串用双引号括起来
9.常量以什么样的二进制代码储存在计算机中
整数是以补码的形式转化为二进制代码储存在计算机中的 实数是以IEEE754标准转化为二进制代码储存在计算机中的 字符的本质实际上也是与整数的存储方式相同
10.代码规范化
林锐《高质量程序》 代码的可读性更强,容易让自己和别人更清楚的看懂 降低程序出错率
11.什么是字节
字节就是存储数据的单位,并且是硬件所能访问的最小单位 1字节 = 8位 1K = 1024字节(2的10次方) 1M = 1024K 1G = 1024M
12.不同类型数据之间相互赋值的问题
13.什么是ASCII码
ASCII不是一个值,而是一种规定, ASCII规定了不同的字符是使用哪个整数值去表示 它规定了 ‘A’ —— 65 ‘B’ —— 66 ‘a’ —— 97 ‘0’ —— 48(字母0)
15.printf 和 scanf用法
Printf用法 输入控制符: %d (int) %ld (long int) %f (float) %lf(double) %x(十六进制) %o(八进制) %s(字符串) %c(char)
%x的用法和注释规范性,如下图 为什么需要输出控制符? (1)0和1 组成的代码可以表示数据也可以表示指令 (2)如果0和1代码组合以不同的输出格式输出就会有不同的输出结果
scanf的用法 用法一:scanf(“输入控制符”,输入参数); 功能: 将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入以输入参数的值为地址的变量中 用法二:scanf(“非输入控制符 输入控制符”,输入参数); 功能: 将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入以输入参数的值为地址的变量中 非输入控制符必须原样输入
如何使用scanf编写出高质量代码 1.使用scanf之前最好先使用printf提示用户以什么样的方式来输入 2.scanf中尽量不要使用非输入控制符,尤其是不要用\n 3.应该编写代码对用户的非法输入做适当的处理
while ((ch=getchar()) != '\n')
continue;
第3节 运算符
运算符 算数运算符
- + * / %(取余数)
关系运算符
>= < <= !=(不等于) ==(等于)
逻辑运算符
!(非) &&(并且) ||(或)
赋值运算符
= += -= *= /=
优先级别:
算数 > 关系 > 逻辑 > 赋值
除法(/)的运算结果和运算对象的数据类型有关,两个数都是int,则商就是int,若商有小数,则弃去小数部分;被除数和除数中只要有一个或两个都是浮点型数据,则商也是浮点型,小数部分留下。
取余%的运算对象必须是整数,结果是整除后的余数,其余数的符号与被除数相同。
&&左边的表达式为假 右边的表达式不会执行 || 左边的表达式为真 右边的表达式不会执行
|