c语言程序设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
页眉内容
《c语言程序设计》听课笔记:01
演变历史:CPL-BCPL-B-C
面向机器的高级语言
C语言的特点:1语言简洁,紧凑,使用灵活 2运算符丰富 3具有数据类型构造能力 4具有很强的流程控制结构 5语言生成的代码质量高 6可移植性较好(显著的特点) 7语言限制不够严格
程序设计语言的构成:数据,运算,控制结构,存储管理,运算环境
数据:提供用于加工的各种类型的初等数据项和数据结构
运算:为数据提供一组有效的数据运算
控制结构:为一系列被执行的基本运算提供控制运算顺序的机构
存储管理:动态,静态
运算环境:内部,外部
程序设计语言的实现:(1)翻译或编译:1编译程序:高级语言源程序-机器语言目标程序 2汇编程序:汇编语言源程序-机器目标语言程序 3装配程序:机器语言源程序-机器语言目标程序(2)软件模拟:高级语言源程序-运行结果
字符集:1数字:0-9 2字母:A-Z,a-z 3特殊字符:-,#,、,(,)等 4运算符:+,-,/,%等
保留字:1类型说明和定义保留字:chai,int,short等 2存储类说明保留字:auto,resgister,static,extern 3特定字:用在预处理程序中,define,undef,include.
标示符:保留字,特定字,一般标示符,
一般标示符:用来标识变量名,常量名,函数名,数组名,类型名,文件名等的符号名字:(1)标识符其结构定义:以字母(包括下划线)开头的字母数字串
注意:书写标识符时有大小写区别,标示符的长度无统一规定
C语言以左大括号开头以右大括号结束,分号前的语句表示C语言的输出字符
《c语言程序设计》听课笔记:02
一、整形数据的类型:
a)整型常量:整型常量即整常数,有十进制、八进制和十六进制整数。
十进制数:一串连续的数字表示,最高位为非零。
八进制数:以数字零开头。
十六进制数:以数字零和字母x开头,a-f不区分大小写。
b)整型变量:分为有符号和无符号两种,所有整型变量在使用前必须加以说明和定义
有符号的整型变量分为三种:标准整型(int)、短整型(short)和长整型(long),其值可正可负。
无符号的亦可分为三种:标准整型(unsigned int)、短整型(unsigned short)和长整型(unsigned long),其值不能为负。
• int、short和long区别主要是表示的整数范围不同,用一个机器字来存放一个int型数据。且int、short和long型整数的字长满足:short short占16位,即两个字节。long占32位,即四个字节。 16位处理的数的范围:-32768~32767 正整数:以原码形式存放在内存中,16位是正数范围为0~32767 负整数:以补码方式存放在内存中 补码的求法:1.原码除符号位其余位均取反+1;2.用模减去绝对值。 补码还原十进制:除符号位其余位取反后转化成十进制数,将结果-1,还原出十进制数 二、字符型数据 a)字符型常量: 1.由一对单引号引起来的单个字符(可打印) 2.转义序列:反斜线后跟特定的字符(不可打印),作为一个字符对待,如其后的字符不能和\构成转义序列,则\被忽略。 \n 换行符\r 回车符,回到此行的开头,并不换行 \t Tab键,一次性输入多个空格 \b 退格符,光标向回走 \f 换页符,到下一页的开始 \\ 输出符号\ \' 输出单引号' \0 空字符,不是空格,ASCII 码中=0 \ddd 1~3位8进制数字 \0xff 1~2位16进制数字 PS:ASCII 码是2进制7位有效,占8位,所以对于8进制来说需要3位,对于16进制来说需要2位 《c语言程序设计》听课笔记:03 b)字符型变量:由保留字char来说明(格式为char c1,c2;)其中c1、c2中只能各存放一个字符标准输入输出函数stdio.h(putchar:将键盘输入的字符显示在显示器上、getchar:用户从键盘输入字符给变量) • 字符数据在计算机内部是以一个字节(8位)的二进制形式表示的,所以对要处理的字符通常先进行编码(整数型,但是对于有无符号,没有特别规定),对一个char型变量赋值一个 整型值时,可能是ASCII 码 printf中的参数可以有多个,但第一个参数必须是字符串,我们称其为格式串(可显示字符直接显示,\n之类的控制字符则产生相应的动作)。 常用的转换符有:%d 输出的是十进制整型%c输出的是字符型%f输出的是浮点型%s输出的是字符串型(C语言中用数组实现)\0是字符串结束的标志。 char型可参与任何整数运算,但是必须转化成ASCII 码后进行 数字字符<--->整数值:基准字符‘0’,任意数字字符‘X’-‘0’=X(数值) 字符量可以参加关系运算(<、>之类),但是必须转化成ASCII 码后进行 字符量可以参加逻辑运算(&之类),但是必须转化成ASCII 码后进行 c)字符串常量(字符串无变量):用一对双引号括起来的零个或多个字符的序列。 字符串常量“x”内存中占2个字节(“x”=x/0) 字符串两边的双引号是字符串的分界符,而不是字符串的一部分,双引号的ASCII码值是042,要输出双引号\042 eg:The "a" is an indef art.The \042a\042 is an indef art. 字符串中所含的字符个数称字符串的长度(不包含结尾的\0)。例如:“XYZ”的长度为3,“”的长度为0,称为空串。但是字符串所占的空间为长度+1(包含结尾的\0) 转义系列也可以出现在字符串中,但只是作为一个字符串来看待。 三、浮点型数据 分为浮点型常量和浮点型变量。 a)浮点型常量:分为非指数型和指数型两种。 非指数型是不带指数部分的实数型常数 指数型常数是指带有指数部分的实数:e(E)之前必须有数字,之后的指数必须为整数,且不能插入空格。b)浮点型变量:通过保留字float来说明(格式为float x, y, z;) 《c语言程序设计》听课笔记:04 • 十进制含有小数的转化为二进制的方法:整数部分和小数部分分别转化为二进制,中间用点连接,这种小数表示方法将小数点放置最后(没有小数点),或者最前面 (可忽略小数点),则可剔除小数点的问题 所以任意一个二进制实数N总可以表达成N=S*2P(P次方)(P、S为有符号二进制整数,P称阶码,S称尾数并约定其中没有小数点或可忽略小数点),可假设存储时P占8位 (若指数为负,存储时取其补码,用(8位模)减绝对值即可),S占24位(具体S、P占的位数并无硬性规定) 浮点型数据在内存中一般占4个字节(32位:24位尾数+8位阶码),7位精度,浮点型输出时,小数点留6位整型数据占两个字节(16位) 四、双精度数据