《C语言程序设计》教案清华谭浩强Word文档格式.docx
《《C语言程序设计》教案清华谭浩强Word文档格式.docx》由会员分享,可在线阅读,更多相关《《C语言程序设计》教案清华谭浩强Word文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
TC1.5(图形和文本窗口)
1989年:
——TurboC2.0(DOS操作系统、查错、Tiny模式生成com文件)
1991年:
——TurboC++(3.0)支持windows3.X
说明:
TurboC语言可以在程序的任何地方嵌入汇编代码,提高速度,可以直接使用存储器和寄存器。
二.C语言的特点
1.语言简洁、紧凑、使用方便、灵活
——共有32个关键字,9种控制语句;
程序书写自由,主要用小写字母表示;
2.运算符丰富
C语言的运算符包含的范围很广泛,共有34种运算符;
即:
把括号、赋值、强制类型转换都作为运算符处理
3.有丰富的数据类型
整型、实型、字符型、数据类型、指针类型、结构体类型、共用体(联合)类型等。
实现复杂的数据结构(链表、树、栈、图)的运算。
4.具有结构化的功能,用函数作为程序模块,实现程序的模块化
5.语法限制不太严格,程序设计自由度大。
(放宽了语法检查)
例:
1)对数组下标越界不作检查,由程序编写者自己保证程序的正确;
2)整型数据、字符型数据、逻辑型数据可以通用。
6.能直接访问物理地址,能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。
7.生成目标代码质量高,程序执行效率高。
8.用C语言编写的程序,移植性较好。
C语言比其它高级语言难掌握,对编程人员要求较高
程序员使用C语言编写程序会感到限制少、灵活性大,功能强,可以编写出任何类型的程序。
三.C程序的构成
例:
main()/*主函数*/
{
inta,b,sum;
/*定义变量*/
a=123;
b=456;
sum=a+b;
printf(“sumis%d\n”,sum);
/*输出变量*/
}
说明:
1)程序一般用小写字母书写;
2)每个程序必须要有一个main()(只能一个),称主函数;
注:
C程序是由函数构成的,函数是C程序的基本单位。
函数:
系统提供的库函数;
用户设计的函数。
3)程序体必须在{}之间;
4)每个语句的结尾,必须要有“;
”作为终止符。
5)用/*………..*/作注释
四、C程序的上机过程
1.演示书:
P5程序
2.上机步骤书:
P7
C语言是一种编译语言,编译语言的特点:
C编译程序Link程序
3.DOS下C语言的运行
目前DOS下运行C语言软件为:
TurboC2.0
(1)TurboC2.0的特点:
是一个把①编辑②编译③连接④运行等全部操作集中在一个界面上。
(2)TurboC2.0的操作及运行书:
P8
五、算法的概念
1.算法的概念书:
P13
算法:
程序的操作步骤。
程序中的数据
在程序设计中:
操作步骤
有:
程序=数据结构+算法沃思NikiklausWirth
程序=算法+数据结构+程序设计方法+语言工具和环境
2.计算机算法分为两大类:
①数值运算算法 ②非数值运算算法
(1)数值运算算法:
求数值解;
通过运算得出一个具体值,如求方程的根等
数值运算一般有现成的模型,算法较成熟。
(2)非数值运算算法:
用于事务管理,如图书检索、人事管理等。
3、常用简单算法
(1)累乘即:
1×
2×
3×
4×
5……×
100
1×
2→S(结果)
S×
3→S(结果)
4→S(结果)
┇
100→S(结果)
(2)累加即:
1+2+3+4+5……+100
1+2→S(结果)
S+3→S(结果)
S+4→S(结果)
S+100→S(结果)
(3)找最大值5,2,4,12,9
5→max(max放最大值,后面的数都和它比较)
2>
max不成立
4>
12>
max成立:
12→max
9>
注:
该算法可扩展为在一批数据中,找某一个数
(4)其它算法
P15例2.2例2.3例2.4例2.5课余自学(必须)
4、算法的表示
常用的有:
①自然语言②传统流程图③结构化流程图④伪代码⑤PAD图
(1)传统流程图
起止框输入输出框判断框处理框流程线连接点
表示方法:
P19例
传统流程图对流程线的使用没有严格限制,难以实现结构化程序设计
为了限制流程线的滥用,提出三种基本结构:
①顺序结构②选择结构③循环结构
顺序结构选择结构
ft.f
语句表达式表达式
t
语句语句语句1语句2
循环结构
表达式语句
语句表达式
a)“当型”结构b)“直到型”结构
(2)N-S流程图
特点:
去掉了带箭头的流程线,全部算法写在一个矩形框内。
称N-S结构化流程图
P
A成立不成立当P1成立A
B
ABA直到P1成立
顺序结构选择结构循环结构
作业:
p372.4
上机:
熟悉TurboC2.0的操作及运行
第三章数据类型、运算符与表达式
本章是C语言的基本概念开篇,所介绍的概念是学习C语言的基础;
要求熟练掌握数据类型、运算符与表达式。
C语言数据类型定义的方法和分类。
C语言运算符、表达式的使用以及它们的主要特点。
自增、自减运算符、赋值运算符、逗号运算符及它们的混合使用
一.数据类型
概念:
算法处理的对象——是数据,而数据是以某种特定的形式出现。
在C语言中,数据有:
常量、变量;
一般它们都有一定的数据类型。
(C语言的数据结构是以数据类型形式出现的)
1.数据类型分类:
整型int
基本类型字符型单精度型float
实型(浮点型)
枚举类型双精度型double
数据类型数组类型
构造类型结构体类型struct
共用体(联合)类型union
指针类型*
空类型void
在程序中对用到的所有数据都必须指定其数据类型。
2.C语言中的常量和变量
常量:
——在程序运行过程中,其值不能被改变的量。
变量:
——在程序运行过程中,其值可以改变的量。
1)常量和变量,都要有一个名字表示它;
习惯上,符号常量(别名)名用大写,变量用小写。
符号常量的定义为:
#defineP30
其它常量:
直接用数据表示例:
2345.5‘e’3e+2
2)在C语言中,对变量要先定义,后使用。
3)如果一个变量被指定为一确定类型后,在C语言编译时,就能为其分配相应的存储单元。
a变量名
存储地址)20003变量值
存储单元
地址的概念
3.常用的基本数据类型
(1)整型
1)整型常量:
十进制整数123,-11,0非0开头
八进制整型0123,-0110开头
十六进制整型0x110x200x0D0XFF0x4e0x/0X开头
在一个整常量后面加一个字母:
l或L,是长整型常量。
22L0733L0xae4l
2)整型变量:
定义存储字节数的范围
基本型intx(2字节)-32768~32767
短整型shortintx(2字节)-32768~32767
长整型longintx(4字节)-2,147,483,648~2,147,483,647
无符号型unsignedintx(2字节)0~65535
unsignedshortx(2字节)0~65535
unsignedlongx(4字节)0~4,294,967,295
数据在内存中是以:
二进制形式存放
如:
9为00001001
x=13;
x=015;
x=0xD存储结构见P44图3.5
数据超过数据范围,会发生数据溢出例3.2、3.3
(2)实型(浮点数)
1)实型常量:
十进制整数1.23.0123
指数形式1.23e3,1.00e-3
2)实型变量:
数的表示范围P46表3.2
单精度floatx(4字节)3.4x10-38~3.4x1038
TC默认双精度doublex(8字节)1.7x10-308~1.7x10308
实型常量不分float和double,只有十进制表达方式
有的C编译系统64位存储方式,如尾加f或F可表示32位:
324.567f
x=1.23;
x=123e3P47例3.4(存储精度)
(3)字符型
1)字符常量:
a)用单引号括起来的一个字符‘a’‘A’
b)转义字符(由“\专用字母”)书P48表3.3例3.5
\0字符串结束符\n换行\t水平制表
\ddd八进制数\xdd十六进制数
2)字符变量:
charc(1字节)
一个字符变量,只能放一个字符常量。
实际是把该常量的ASCII值,送入字符变量中。
即:
‘B’(66)c(字符变量)
书P374ASCII表p50例3.6-7
c=‘B’c的内容为66
故:
字符数据可以进行算术运算;
c=‘B’+2为68
字符数据在内存中的存储方式书P50
unsignedchar0-255char-128-127有符号数在TC中是用补码表示的
127(0x7f)01111111128(0x80)10000000
复习:
补码的规定:
正数:
其原码、反码、补码相同
负数:
最高位为1,其余各位为原码的反码(原码的相应位取反),然后对整个数加1。
140(0x8c)10001100→11110011+1(取反加1)→11110100→-0x74
-0x7410001011+1(取反加1)→10001100→0x8c
(0x80为负数-74高位为1)
3)字符串常量
用双引号括起来的字符“a”,“ABFD”“a”=“a\0”<
>
‘A’
C规定