C语言学习笔记
一.概述
1. 程序设计语言
1.1 低级语言(面向机器)
低级语言分为机器语言和汇编语言
- 优点:机器效率高,程序逻辑代码量小
- 缺点:与人们思考问题和描述问题的方法相距太远,使用反锁,易出差错,要求使用者熟悉计算机内的细节,非专业的普通用户很难对它维护。
1.2 高级语言(面向人类)
优点:屏蔽了机器的细节,提高了语言的抽象层次,程序中可以采用具有一定含义的数据明明和容易理解的执行语句。易学、易用、易维护,且基本与机器无关,给编程带来了极大的方便。
C语言学习的框架图
每个C程序必须有且仅有个main程序
- main主函数:
- 一个程序有且仅有一条main函数语句。
- main函数的位置可以随意
- 但是执行的时候必须由main函数开始 并由main函数调用结束
- 其他函数不可以调用主函数
2. C语言二的基本语法成分
标识符 在程序中用来标识各种程序成分,命名程序中的一些实体。包括三方面:
- 字母
- 数字
- 下划线
注意
- 开头:必须是英文字母或下划线
- 大小写敏感
- 长度:一般同规定标识符的长度<=8
- 标识符的选择要有意义
标识符分为:系统定义标识符、用户定义标识符
关键字:预定义标识符,用户标识符
9种控制语句:
- 对用户定义标识符的规定:
1 . 不能含有字母、数字、下划线“”_“”外的其他字符
2 . 必须以字母或下划线‘_开头
3 . 标识符中大小写字母含义不同
4 长度:一般系统固定标识符的长度<=8
5 标识符的选择要有意义 - 对标识符的规定:
1 关键字必须用小写字母,不允许使用关键字为变量、数组、函数等操作对象命名
2 预定义标识符允许用户对他们进行重新定义,当重新定义后将改变他们原来的含义
二. 基本数据类型和运算度和表达式
2.1 C语言的基本数据类型
数据:计算机程序加工处理的对象
数据类型:具有相同性质的数据对象的集合
数据类型:
- 基本数据类型
- 构造类型
- 指针类型
- 空类型 void
2.2 常量
2.2.1 整型常量:
2.2.2 实型(浮点型)常量:
- 实型常量的类型:
默认double
在实型常量后面加字母f或F,认为他是float型
2.2.3 符号常量
符号常量:用标识符(identifier)代表常量
标识符一般用大写字母
是宏定义预处理命令,不是C语句
使用符号常量时要注意:
- 一般用大写字母
- 用宏定义预处理命令 不是C语句 没有“”;“”
- 编译时先由系统替换为他所代表的常量,在进行编译
- 虽然用标识符来表示标识,但本质是常量。具有常量值不能改变的性质
2.2.4 字符型常量:
2.2.5 转义字符
2.3 变量:
在程序运行过程中其值可以改变的量
先定义和使用
定义格式:
数据类型 变量名
可以进行一条语句 定义多个变量
2.4 运算符和表达式
2.4.1 算数运算符和算数表达式
运算符是用来处理数据
按照功能分为:
求余运算符:
自增/自减:
自增/自减运算符注意:
自增、自减运算符只能用于变量,而不能用于常量或表达式
结合方向是自右向左
自增、自减运算符常用语循环语句中,使循环变量自动加1或减1;也用于指针变量,使指针变量指向下一个内存地址
例如:
j=-i++
当i=3时 运算完毕后j=-3 i=4
2.4.2 赋值运算符合赋值表达式
基本的赋值运算符: =
格式: 变脸=表达式
作用:将数据(常量或表达式)赋给一个变量
结合方向: 从右向左,优先级14级
注意’
:左侧必须是变量,不能是常量或表达式
- 转换规则:
使赋值号右边表达式值自动转换成其左边变量的类型
自右至左
例如:
2.4.3 关系运算符和关系表达式
优先级
2.4.4 逻辑运算符和逻辑表达式
2.4.5 条件运算符和逗号运算符
2.5 类型转换
- 自动类型转换(隐式转换)
- 强制类型转换(显式转换)
强制类型转换不改变对改变量说明的类型
第三章 算法和基本程序设计
自顶向下 模块化 限制使用goto语句
3.1 程序的基本结构
- 顺序结构
- 选择结构
- 循环结构
3.2 数据的输入输出语句
第四章 选择分支结构程序设计
4.1 if语句
4.2 Switch语句
第五章 循环结构程序设计
第六章 指针
第七章 数组
7.1 一维数组
7.2 二维数组
7.3 字符数组
7.4 指针与一维数组