《C语言程序设计》教案清华谭浩强教案Word文件下载.docx

上传人:b****6 文档编号:8492031 上传时间:2023-05-11 格式:DOCX 页数:152 大小:77.76KB
下载 相关 举报
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第1页
第1页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第2页
第2页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第3页
第3页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第4页
第4页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第5页
第5页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第6页
第6页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第7页
第7页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第8页
第8页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第9页
第9页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第10页
第10页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第11页
第11页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第12页
第12页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第13页
第13页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第14页
第14页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第15页
第15页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第16页
第16页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第17页
第17页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第18页
第18页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第19页
第19页 / 共152页
《C语言程序设计》教案清华谭浩强教案Word文件下载.docx_第20页
第20页 / 共152页
亲,该文档总共152页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

《C语言程序设计》教案清华谭浩强教案Word文件下载.docx

《《C语言程序设计》教案清华谭浩强教案Word文件下载.docx》由会员分享,可在线阅读,更多相关《《C语言程序设计》教案清华谭浩强教案Word文件下载.docx(152页珍藏版)》请在冰点文库上搜索。

《C语言程序设计》教案清华谭浩强教案Word文件下载.docx

inta,b,sum;

a=123;

b=456;

/*定义变量*/

sum=a+b;

printf(

n”,sum);

/*输出变量*/

}

1)程序一般用小写字母书写;

2)每个程序必须要有一个main()(只能一个),称主函数;

注:

C程序是由函数构成的,函数是C程序的基本单位。

函数:

系统提供的库函数;

用户设计的函数。

3)程序体必须在{}之间;

4)每个语句的结尾,必须要有“;

”作为终止符。

5)用/*..*/作注释

四、C程序的上机过程

1.演示书:

P5程序

2.上机步骤书:

P7

C语言是一种编译语言,编译语言的特点:

编译

连接

源程序

目标程序

执行程序

*.C

*.OBJ

*.EXE

C编译程序

Link程序

3.DOS下C语言的运行

目前DOS下运行C语言软件为:

TurboC2.0

(1)TurboC2.0的特点:

是一个把①编辑②编译③连接④运行等全部操作集中在一个界

面上。

(2)TurboC2.0的操作及运行书:

P8

五、算法的概念

1.算法的概念书:

P13

算法:

程序的操作步骤。

在程序设计中:

程序中的数据

操作步骤

有:

程序

=数据结构

+算法

沃思

NikiklausWirth

程序=算法+数据结构+程序设计方法+语言工具和环境

2.计算机算法分为两大类:

①数值运算算法②非数值运算算法

(1)数值运算算法:

求数值解;

通过运算得出一个具体值,如求方程的根等

数值运算一般有现成的模型,算法较成熟。

(2)非数值运算算法:

用于事务管理,如图书检索、人事管理等。

3、常用简单算法

(1)累乘即:

100

2→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>

9>

不成立不成立成立:

12不成立

该算法可扩展为在一批数据中,找某一个数

(4)其它算法

P15例2.2例2.3例2.4例2.5课余自学(必须)

4、算法的表示

常用的有:

①自然语言②传统流程图③结构化流程图④伪代码⑤PAD

(1)传统流程图

起止框输入输出框判断框处理框流程线连接点

表示方法:

P19例

传统流程图对流程线的使用没有严格限制,难以实现结构化程序设计为了限制流程线的滥用,提出三种基本结构:

①顺序结构②选择结构③循环结构

顺序结构

选择结构

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

字符型

实型(浮点型)

枚举类型

数组类型

结构体类型struct

共用体(联合)类型

单精度型

双精度型

union

float

double

指针类型*

空类型void

在程序中对用到的所有数据都必须指定其数据类型。

2.C语言中的常量和变量

常量:

——在程序运行过程中,其值不能被改变的量。

变量:

——在程序运行过程中,其值可以改变的量。

1)常量和变量,都要有一个名字表示它;

习惯上,符号常量(别名)名用大写,变量用小写。

符号常量的定义为:

#defineP30

其它常量:

直接用数据表示例:

2345.5‘e’3e+22)在C语言中,对变量要先定义,后使用。

3)如果一个变量被指定为一确定类型后,在C语言编译时,就能为其分配相应的存储单元。

存储地址)

2000

a

3

变量名

变量值

存储单元

地址的概念

3.常用的基本数据类型

(1)整型

1)整型常量:

十进制整数123,-11,0非0开头

八进制整型0123,-0110开头

十六进制整型0x110x200x0D

0XFF

0x4e

0x/0X

开头

在一个整常量后面加一个字母:

l或L,是长整型常量。

22L0733L

0xae4l

2)整型变量:

定义

存储字节

数的范围

基本型

int

x

(2字节)

-32768~32767

短整型

short

长整型

long

intx

(4字节)

-2,147,483,648~2,147,483,647

无符号型unsignedint

x(2字节)

0~65535

unsignedshort

x(2字节)

unsignedlong

x(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

3.4x10-38~3.4x1038

单精度

(4

字节)

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字符串结束符

\ddd八进制数

2)字符变量:

\n换行\t水平制表

\xdd十六进制数

charc(1字节)

一个字符变量,只能放一个字符常量。

实际是把该常量的

值,送入字符变量中。

‘B’(66)c(字符变量)

书P374ASCII表p50例3.6-7

ASCII

c=‘B’

c的内容为

66

故:

字符数据可以进行算术运算;

c=‘B’+2

68

字符数据在内存中的存储方式

P50

unsignedchar0-255char-128-127有符号数在TC中是用

补码表示的

127(0x7f)

01111111

128(0x80)

10000000

复习:

补码的规定:

正数:

其原码、反码、补码相同

负数:

最高位为1,其余各位为原码的反码(原码的相应位取反),然后对整个数加1。

140(0x8c)10001100→11110011+1(取反加1)→11110100→-0x74-0x7410001011+1(取反加1)→10001100→0x8c

(0x80

为负数-74

高位为

1)

3)字符串常量

用双引号括起来的字符

“a”,“ABFD”“a”=“

0”

<

>

‘A’

C规定,在每一个字符串的结尾应加一个“字符串结束标志”

(\0),

以便系统判断字符串是否结束。

4.各类数值间的混合运算

1)整型、字符型、单精度型、双精度型数据——可以混合运算

2)字符型、整型——可以通用

规则:

unsigned

例如

低intchar,short

10+’a’+1-8765..1234*’b’-858873.593200

(TC

默认

6

位小数)

10+97+1.5-8765.1234*98

二.运算符和表达式

C表达式:

由变量、常量、函数等运算对象和运算符组成的式子

C运算符作用:

1)能把一些基本运算模块用单一的运算符处理

2)使用丰富的运算符,构成多种表达式

C运算符有优先级,优先级高的先执行,同级的由结合规则决定其处

理规则

C运算符有两种结合规则:

1)从左到右的结合运算顺序;

a=5+x-10;

运算对象与左

边运算符结合

2)从右到左的结合运算顺序;

x=y=7;

运算对象与右边运

算符结合

C运算符分类

书P55

1.基本运算符(算术运算符)

C语言有7个基本运算符

1)单目运算符:

(表示符号)正号“+”负号“-”

2)双目运算符:

+、-、*、/、%(模运算,求余运算,两侧为整数)

a)运算顺序的结合方向从左到右

b)求余(取模)运算符是对两个整数相除的余数,计算结果的符号与第一个数的符号相同。

-5%3值为-2、-5%-3值为-2、5%-3值为2

2.自增、自减运算符(优先级高于算术,右结合)

作用:

——使变量的值增1或减1

++i(--i)——在使用i之前,先使

i的值加

1(减

1),然后再

使用

i。

i++(i--)——先使用

i的值,然后再使

i加

1)。

i=4;

j=++i;

i值为

5,值为

5;

j=i++;

5,j

值为

4

1)自增、自减运算符++(--),只能用于变量,不能用于常量或表达式

5++、(a+b)++——不合法

2)运算顺序的结合方向从右到左

例例:

main(){

inti=3z,x,y;

z=(i++)+(i++)+(i++)

x=y=3;

//结果:

z值为

9

z=x+++y;

//变量

x右结合运算符

++

(不是

3+4+5=12)

printf("

z=%d,x=%d,y=%d"

z,x,y);

输出结果:

z=6

x=4

y=3

如果:

z=

最后x++

-x+++y;

z=0

x先为-4,然后+y,

3.赋值运算符和赋值表达式(优先级低于算术,右结合)

(1)“=”——赋值运算符

将一个数据赋给一个变量即:

x=21

注意:

如果赋值运算符两侧的类型不一致,在赋值时,要进行类型转换。

P61例3.9

floatf;

f=23f值为23.0000符号位扩展

(2)复合的赋值运算符

“+=、-=、*=、/=、%=”——在赋值符“=”之前加上其它运算符

称复合运算符(也称为自反运算符)

a+=3

等价于

a=a+3

x*=y+8

x=x*(y+8)

y/=4

y=y/4

m%=3

m=m%3

C语言采用这种复合运算符:

为了简化程序,使程序精练;

提高编译效率。

(3)赋值表达式

格式:

变量=表达式

表达式:

可以是1)常量、变量、算术表达式;

2)赋值表达式

a=(b=5)或a=b=5(运算顺序的结合方向从右到

左)

a=b=c=6;

a=5+(c=6)(结果a=11c=6)

a=3;

求:

a+=a-=a*a;

[有:

1]a*a;

92)a=a-(a*a);

-63)a+=-6]-6+-6

a为:

-12结果值为:

-12

4.逗号运算符和逗号表达式(优先级最低,左结合)

用“,”将两个表达式连接起来。

表达式1,表达式2即:

3+5,6*9;

值为54

(先求解表达式1,再求解表达式2,最后逗号表达式的值为表达式

值)

2的

a=2*5,a*3;

a值为

10

结果值为:

30

(先求:

a=2*5,后求:

a*3)

x=(a=2*5,a*3),a+4

x值为

14

使用逗号表达式的目的,只是为了得到各个表达式的值(常用于循环语句)

解表达式1的结果可能影响解表达式2的值

5.强制类型转换运算符(优先级高于算术,右结合)

在要转换的数据前,用小括号括上要转换的数据类型即:

(int)x;

(int)(a+b)(int)x+y

(类型名)表达式

C一般会自动进行数据类型转换P56例3.8,用于不能自动转换的地

方x%3(floatf)

6.关系运算符和关系表达式(书P87)(优先级低于算术,左结合,高于赋值)

(1)6种关系运算符

=

(优先级高)

==

=

(优先

级低)

(2)关系表达式

表达式关系运算符

a>

ba+b>

=b+c(a=4)<

(b=8)‘x’==‘y’

关系表达式值:

是一个逻辑值,即:

“真”或“假”

1——代表“真”0——代表“假”

7.逻辑运算符和逻辑表达式(书P88)(优先级低于关系,左结合)

(1)3种逻辑运算符p89表5.1

&

(与)||(或)!

(非)

(2)逻辑表达式

表达式逻辑运算符

p89

(a>

b)||(a+b>

=b+c)

‘x’&

‘值y’为1

1

(a=4)&

(b=8)

1||

(1)

逻辑表达式值:

“真”或“假”p90

优先次序(由高到低):

(非)算术运算符关系运算符&

和||

求值短路:

5>

3&

2||8<

4-!

01||∞(结果1)

0&

∞(结果0)如:

a&

b&

ca<

0才判断a&

b

赋值运算符

8.条件运算符(书P97)

表达式1?

表达式2:

表达式3

执行:

先求解表达式1,为真(非零),求表达式2为假(为0),求表达式3

y=(a>

b)?

a:

b;

a)条件运算符要求有三个操作对象(称三目元运算符)

b)条件运算符优先于赋值运算符

y=(a>

先求

(a>

b

后赋值

c)条件运算符的结合方向为“自右至左”

b可写为:

b?

a>

b+5相当于:

a:

(b+5)

c>

d?

c:

d相当于:

(c>

d)

*9.位运算符(书P298)(一般掌握)

位运算:

——是对字节或字中的实际位进行检测、设置、屏蔽、移位。

位运算符:

——位逻辑与|——位逻辑或

~——位逻辑反>

——右移

^——位逻辑异或

——左移

三、运算符小结

1.左结合方向的运算符

主要有:

算术运算符、关系运算符、逻辑运算符、逗号运算符

2.右结合方向的运算符

自增、自减运算符、赋值运算符(复合的赋值运算符)、条件运算符

1)i=3;

printf("

%d,%d"

,i,i++);

2)a=1;

b=1;

c=2;

a=b+=c*=5;

输出:

4,

a为11

b为

11

c

为10

3)a>

c?

a:

c:

b>

c?

b:

c相当于:

(a>

c):

(b>

b:

c)

(求最大值,如a=2,b=8,c=5结果为:

8)

3.运算符的优先次序(书P375附录Ⅲ)

()、!

++/--/-转移、算术、关系(<

=>

=)、关系(==!

=)、&

、||、条件(?

)、

赋值、逗号

1)-a++相当于-(a++)

2)x=4,y=7求:

y+=++x-3x的值5y的值9

3)x=4,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2