1.1.1计算机和编程语言
- 计算机只能一步一步做(按部就班)—所以—需要程序(编程语言)
- 算法—转化—程序—指示—计算机(怎么做)
1.1.2计算机的思维方式
- 枚举法(加附加条件):计算机更喜欢且比找算法容易
- 程序的执行(两种语言没有本质区别):1. 解释:借助一个程序可理解你的程序按照要求执行(特殊计算能力)
2. 编译:把自己的程序翻译为计算机语言(计算机可读懂)——直接(或存储)执行(确定的运算性能)
1.2.1为什么是c
- c的优势:很多场合c是唯一选择(操作和嵌入系统)
- 有很强的库(很方便)且语言本身差异小(传统用c多)
1.2.2简单历史
- FORTRAN——BCPL——B——C(演变过程)
- 受PL/1的影响
- 出现c语言编译器
- C的发展与版本:经典C——ANSI C——C89——C95和C99(编译器都支持)
1.2.3编程软件
- C是一种工业语言:开发效率更高
- 多样的编程软件:Xcode,DEVC++,Geany
1.3.1第一个C程序
-
不在中文输入状态
-
存储的时候例如:hello world.c
-
程序框架:#include<stdio.h>
int main()
{
Return 0;
}
1.3.2详解第一个程序
- Printf(“Hello world!\n”):里面的内容是字符串,\n表示换一行
- 大括号每一句要加分号,不用中文输入
1.3.3做点计算
- 四则运算:
(该图片摘自b站视频)
1.3.4Mac OS X如何在命令行编辑、编译、执行C程序
- 具体介绍如何使用该系统
2.1.2变量定义
- Change.c如何操作
- 变量定义:保存数据的地方,一般形式:<类型名称>+<变量名称>例如:int price
- C语言的保留字:auto,case
2.1.3变量赋值与初始化
- price=0(初始化),=为赋值符号
- a=b与b=a不同(赋值方向不同)
- 变量类型:price、amount
2.1.4变量输入
- 读整数
(该图片摘自b站视频)
2.1.5常量VS变量
- 常量的概念
(该图片摘自b站视频)
const表示不变,表明变量一旦初始化就不能再修改(变量要大写)
- 变量plus.c:
(该图片摘自b站视频)
2.1.6浮点数
-
计算身高程序(要小数位):两个整数计算只能是整数,10.0和10不同(10.0是浮点数)
(该图片摘自b站视频)
-
浮点数:带小数点的数值(小数点浮动),浮点数之间才能运算
(该图片摘自b站视频)
2.2.1表达式
- 运算符和算子:动作(如加法运算符+)和参与计算的值
- 计算时间差
(该图片摘自b站视频)
2.2.2运算符优先级
- 运算符优先级:
(该图片摘自b站视频)
2.2.3交换变量
-
两个变量交换:加入第三个变量中转
例如:int t=a
a=b
b=t
2.2.4复合赋值与递增递减
- 复合赋值实例:
(该图片摘自b站视频)
- 递增递减(++和–):1.算子是变量,给变量+1和-1
2.a++是+1前的值,++a是+1后的值
2.2.5如何使用PAT系统来做编程练习题
- 教会如何使用PAT提交作业
3.0.1PAT再解释
- 仔细读题:明确格式样式、题目要求、样例
- 不要交互输出,检查输入
3.0.2第二周习题讲解
- 讲解布置作业
3.0.3 0的故事
- 0的模样来源:中间有斜线
3.1.1做判断
- 进位判断
- if语句
3.1.2判断的条件
- 条件:
(该图片摘自b站视频)
- 优先级:赋值运算符<关系运算符<算术运算符
3.1.3找零计算器
- 注释://给人类提供信息,计算机不会读取
- 介绍判断年龄所输出时的程序
3.1.4否则的话
- 介绍if-else语句(优势:更加方便判断)
3.1.5if语句再探
- 注意事项:要有大括号
- 计算薪水和判断成绩的程序
3.2.1嵌套的if-else
- 找最大的数(三个及以上的数):用嵌套的if-else语句(if-else里再套一个if-else语句)
3.2.2级联的if-else if
- 分段函数:用级联的if-else语句
3.2.3if-else的常见错误
- 不要忘记大括号
- 不要乱用分号
- 不要错用等号
3.2.4多路分支
- Switch-case语句:表达式只能是整数型结果、常数可以是常量也可以是常数计算的表达式。break才可以使程序停下来
- 成绩转换(用Switch-case)
4.1.1循环
- 判断几位数(用if-else只能判断低位数)——加while循环(可以判断高位数)