C语言教案(C语言大学实用教程(第2版))

上传人:缘*** 文档编号:333382363 上传时间:2022-09-02 格式:PDF 页数:129 大小:11.71MB
返回 下载 相关 举报
C语言教案(C语言大学实用教程(第2版))_第1页
第1页 / 共129页
C语言教案(C语言大学实用教程(第2版))_第2页
第2页 / 共129页
C语言教案(C语言大学实用教程(第2版))_第3页
第3页 / 共129页
C语言教案(C语言大学实用教程(第2版))_第4页
第4页 / 共129页
C语言教案(C语言大学实用教程(第2版))_第5页
第5页 / 共129页
点击查看更多>>
资源描述

《C语言教案(C语言大学实用教程(第2版))》由会员分享,可在线阅读,更多相关《C语言教案(C语言大学实用教程(第2版))(129页珍藏版)》请在金锄头文库上搜索。

1、课 程 名 称:C语言程序设计班 级:10011304,10011305 班教 材:c语 言 大 学 实 用 教 程r第2版)第1章 程 序 设 计ABC预 计 课 时:1i.计算机与人 计算机智能靠的是高速的计算能力,不可把计算机神秘化;(I B M 公司深蓝电脑国际象棋大师 A I i s b u l l s h i t A l a r t i f i c i a l i nt e l l i g e nc e)现代社会计算机应用广泛,几乎所有行业都离不开计算机;(嵌入式也属于计算机的范畴)C A D(C ompu t e r A i d e d D e s i g n)2.计算机与程序设

2、计语言 只处理二进制信息(电子元件2 种稳定状态,运算规则简单)冯 诺依曼结构(原理:存储指令并逐条执行)(控制器、运算器、存储器、输入设备、输出设备)3.程序设计语言的故事 机器语言:可以直接运行(纸带式输入)(5 1单片机,0010 0100 0000 1000,相当于A D D A,#08 H,功能:把累加器A中的数值和8 相加,结果存入A累 力 口 器)汇编语言:指令助记符,汇编解释后执行(A D D A,#08 H)M O V A X,1 A D D A X,1 计算 1+14.C 语言的故事 20世纪60年代末为了开发U N IX系统先开发了 B语言 20世纪70年代初B语言基础上

3、加入数据类型(Datatype)和 结 构(Structure),形成C语言原始框架 20世纪80年代,商业版UNIX广泛应用,C语言开始流行 1989 年美国国家标准协会(ANSI American National Standards Institute)制订 ANSIX3.159-1989标准,简称 C89 1 9 9 9断星金纨ISO,International Organization for Standards),修改后 C99 特点:通用的计算机语言c语言语法简洁、灵活、有严格的数据类型定义,特别是允许直接访问物理地址、能进行位操作,可直接对硬件进行操作,因此C语言几乎是“万能”

4、的编程语言。另外,C语言目标代码质量高,程序执行效率高,适用于开发嵌入式软件和系统软件。C+面向对象更加贴近现实世界,符合人类的思维习惯,较难掌握;JAVA纯面向对象,与平台无关,语法为简化的C+,易用易学,但是效率不如C/C+;C#新生语言,面向对象,较 C+简单,适合网络编程;思考:既然有了面向对象的C+语言,为什么还要学习C 语言?解 释 1:C+是由于开发大型应用软件的需要而产生的,并不是所有的人都要去编写大型软件;解释2:面向对象的基础是面向过程。C+是面向对象的语言,C 是面向过程的,学起来比C 语言困难得多,所以不太适合程序设计的初学者5.程序设计语言的工作原理 C,C+是编译运

5、行方式,编译后产生的exe文件就是机器指令,可以直接运行,效率最高;BasicJavascript、V bscript,以及其它的脚本语言采用 解释运行方 式(效率最低);Java,C#是先编译,产生 中 间 代 码,在一定的平台上 解 释 运 行(Java在 JVM,JavaVirtual Machine 上运行;C#在 CLR,Cominon Language Runtime 上运行)内存模型存储器基本单元的大小是一个7 节;C程序对变量名的访问最终转换为对存储器地址的访问假设变量a首地址在2000H地址中,如果a占用1个字节,那么a的值为11H;如果a占用2个字节,那么a的值为1211H

6、;存储器地址存:储器内容2000H11H2001H12H2002 H13H2003H14H2004H15H课后习题:无第2章 效 据 类 型、运算符与表达式预 计 课 时:4内容关键字:基本数据类型 常量和变量 标识符命名 常用运算符和表达式 运算符的优先级与结合性编译预处理命令,把用到的库函数的对应的头文件包含进来2.1 C 语言程序例子int x,y,sum;printf(Hinput 2 integers:nH);scanf(n%d%dH,&x,&y);sum=add2(x,y);printf(nsum=%dnn,sum);)函数的基本组成:1)函数首部包括:返回值类型、函数名、形参类型

7、、形参名(注意无分号)2)函数体包括:变量声明、执行语句(由赋值语句和函数调用语句组成的可执行语句组成)C 程序的书写格式和规则:分号;一行可写多句,一句可写多行,但建议一句一行;注释;2.2 C 程序常见符号分类1)关键字:已被固定为特定意义,不可擅自修改用途,例如int,float,long等(详见附录B):2)标识符:包括系统预定义标识符(main,scanf,printf等)和用户自定义标识符(变量名,函数名可以自由命名);3)运 算 符(分为13类)P17算术运 算 符(+-*/)关系运算符(=!=)逻辑运算符(!&|).(稍作了解,不用讲完)4)分 隔 符(相邻关键字、标识符之间间

8、隔):空格、回车、制 表 符(Tab),同类型如同一类型的变量声明可以用“,”分开5)其它类型符号:小 括 号“O”用于括起函数参数,或者表达式中改变运算优先级,例如:(5+2)*2+3)*2;方 括 号“口”用于括起数组下标;大 括 号“”用于括起复合语句;单引号,用于括起字符;双引号”用于括起字符串;6)数据:包括常量和变量,区别?2.3数据类型数学上的数据类型:正数,负数,数据类型分类意义:跟存储空间、1)数据类型划分(基本类型数据类型 构造类型指针类型V空类型零;有理数和无理数;整数,小数,分数,无理数取值范围、运算类型有关;r基本整形长整形r整 形 短整形、无符号整形J 单精度实型实

9、 形(浮点型)一 双精度实型字符型枚举类型 数组 结构体、共用体2)数据类型的发展 机器语言和汇编语言中无数据类型概念 高级语言引入整型、实型等简单的抽象数据类型,用户不必了解这些数据类型的具体实现;C 语言不提供如树,栈,队列等复杂的数据类型,需要用户自己构造和维护 C+中的类包括数据类型,而且包括作用在该数据类型上的操作,并且对外隐藏细节3)类型修饰符 signed 可修饰 int、char;int 默认为 signed unsigned 可修饰 int、char;long 可修饰 int、double;short可修饰int;修饰符单独使用时默认为修饰int;signed 和 unsig

10、ned 也可修饰 long in t,和 short int 有符号数与无符号数的区别看最高位;4)原码、反码、补码0 111111111111111无论看作是有符号数还是无符号数,都是32767;(-3276832767)但是1111111111111111如被看做有符号数,则是-1,看作是无符号数,则是65535。(0-65535)看作是有符号还是无符号数,是根据声明变量是否添加了 signed或者unsigned而定的。如果整形数值只取非负的值,可以声明为unsigned,可以获得更大的取值范围;计算机内都是采用补码的形式存放数据,为的是补码运算规则简单 原码、反码、补码的概念;正数负数

11、的补码求法5)标识符命名 有效字符:只能由字母、数字和下划线组成,且以字母或下划线开头;命名应见名知意 大小写敏感2.4常量1.整形常量1)可用八进制(数字。开头),十进制,和十六进制(Ox或者0X 开头)表示2)长整型后添加1或者L,如 1234567L;3)无符号整形常量后跟u 或者U;4)无符号长整型后加LU,lu,LU,1U之一。2.实型常量1)实型常量也就是浮点型常量,带有小数点的常数;2)3+3-3.3 3.都是合法实型常量;3)可以写成指数形式,格式为小数或整数E(或 e)整数的形式,左边的有效数字不可省,指数必须为整数。如 3.0e6,-3.0e-6都是合法的。E3,le0.3

12、不合法。4)实型常量的确定:实型常量隐含为double,要确定为单精度float须添加f 或者F;长双精度在数值后添加L 或者1,如 1.25L。3.字符常量1)可打印的字符用 括起来,如出;2)转义字符:n(换行),(双引号)等;3)d d d,或者xhh,ddd为 13 位八进制数值,hh为 16进制数值代表的字符;4)详细详表见P23。4.字符串常量1)用”括起来的字符串,如“hello world”;2)系统会自动在字符串后添加字符串结束标志(T:3)注意a和a的区别。5.宏常量1)用一个标识符代替一个常量,实质是字符串替换字符串以回车结束;2)如#define Pl 3.15159

13、Pl 为宏名3)不作语法检查,用双引号括起不进行替换,如 川加不避疗逑搂;宏定义不是可执行语句,不用分号结束;6,枚举 常 量(enum,enumeration)7.1 仅由有限个整形变量组成的集合,可用枚举类型提高程序的可读性;7.1 如 e nu m d a y (S u nd a y,M ond a y,T u e s d a y,We d ne s d a y,T h u r s d a y,F r i d a y,S a t u r d a y )t od a y;7.1 如 e nu m s e x(ma n,w oma n)pe r s on;7.1 其中Sunday,Monda

14、y等称为枚举常量,默认第一个为0,依次递增;7.1 枚举常量实质是整数,可以用在任意需要整数的场合;枚举变量实质是整形变量;7.1 可以任意修改枚举常量的值,其后值依次递增,如 Monday=2,Tuesday7.1 Day称为我举标记,可以省略,如赋值today=Monday;7.1 枚举常量不是字符串,可 用 在 任 意整数场合,不 可直接输出,如printf(s”,today);2.5变量1.变量的声明与初始化变量在程序运行过程中的值可以变化,先定义后使用,如 inta=10;inta=l,b=2;变量类型决定内存分配字节数、可存放的数据类型、取值范围、可以参与的运算类型;未赋初值的变量

15、的值为随机值;2.Const修饰符加 上 const修饰符后只能在定义时赋初值,程序中其它地方不可改变其值,如 constfloat=3.14159。作用?与宏常量相比有何好处?有何缺点?const常量有数据类型,编译器可以进行类型检查,宏常量只是字符串替换,但是应用范围更广3.使用变量应注意问题先定义后使用Int,short,long在不同编译环境可能得到不同字节长度,可用sizeof获知占用内存字节数。S i z e of (i nt),s i z e of (s h or t),s i z e of (l ong)在 t u r b o C 2.0 得到的值分别为2,2,4;在 V i

16、s u a l C+中得到的值分别为4,2,4。字符在内存中存储的是该字符对应的A S C I I 码的二进制,A me r i c a n S t a nd a r d C od e f orI nf or ma t i on I nt e r c h a ng e。C h a r 类型可以以字符格式输出也可以当成i nt 类型输出JZ 捌ascii码是65.1nt类型在16位环境占2字 节,在3 2位环境下占4字节。In t可以接收char类型的数据。小写字母比大写字母大32ochar类型可以是signed类型或者unsigned类型,看编译环境而定。注意运算中赋值不可超过该变量的取值范围,否则会发生错误。(附录C 各种变量类型的取值范围)#includeMain()(char ch=a;printf(%c,%d”,ch,ch);将实型数据赋给整形或者char类型,将会截去小数部分。float可以接收7 位有效数字,double可以接收16位有效数据。例如:float b=123456789;double c=123456789;printf(H%fn,b);printf(n%fn

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号