校园网计算机二级C语言教案综合Word格式文档下载.docx

上传人:b****5 文档编号:18314746 上传时间:2022-12-15 格式:DOCX 页数:52 大小:81.49KB
下载 相关 举报
校园网计算机二级C语言教案综合Word格式文档下载.docx_第1页
第1页 / 共52页
校园网计算机二级C语言教案综合Word格式文档下载.docx_第2页
第2页 / 共52页
校园网计算机二级C语言教案综合Word格式文档下载.docx_第3页
第3页 / 共52页
校园网计算机二级C语言教案综合Word格式文档下载.docx_第4页
第4页 / 共52页
校园网计算机二级C语言教案综合Word格式文档下载.docx_第5页
第5页 / 共52页
点击查看更多>>
下载资源
资源描述

校园网计算机二级C语言教案综合Word格式文档下载.docx

《校园网计算机二级C语言教案综合Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《校园网计算机二级C语言教案综合Word格式文档下载.docx(52页珍藏版)》请在冰豆网上搜索。

校园网计算机二级C语言教案综合Word格式文档下载.docx

根据用户需要定义的标识符。

用户标识符不能是关键字。

标识符要求学生必须掌握,可以参考P11的习题进行讲解。

三、常量与变量

1、常量

在程序的运行过程中,其值不发生改变的量。

2、常量分类

(1)直接常量

直接常量又包括整型常量(如12、-3、0)、实型常量(如4.6、-1.23、1.2E+3)和字符常量(如'

A'

、'

6'

)。

(2)符号常量

符号常量在使用之前必须先定义,其一般形式为:

#define符号常量标识符常量值

通过以下两个实现功能相同(求圆面积)的程序,给学生解释使用与不使用符号常量两者的区别。

程序1:

程序2:

#defineR5main()

#definePI3.14159{

main()floatarea;

{intr;

floatarea;

r=5;

area=PI*R*R;

area=3.14159*r*r;

%f"

area);

printf("

}}

习惯上符号常量的标识符用大写字母。

符号常量的值在其作用域内不能被改变。

3、变量

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

4、变量的定义

变量定义的一般形式为:

类型说明符变量名;

变量名是合法的标识符,但不可以是关键字;

允许在一个类型说明符后,定义多个相同类型的变量,各变量名之间用逗号间隔,最后一个变量名之后必须以“;

”号结尾;

一般变量的定义放在函数体的开头部分。

可以通过以下例子的讲解,使学生进一步掌握变量的定义与使用。

inta,b,c;

a=15;

b=20;

c=b-a;

printf("

四、数制转换

1、十进制二、八、十六进制

转换方法:

将十进制数除以基数(二进制基数为2、八进制基数为8、十六进制基数为16),并记录余数,若商不为0,则继续用商除以基数,并记录余数,直到商为0,余数倒排列写下来,即为转换后的二进制或八进制或十六进制。

注意:

在转换过程中,余数为0也要记录下来,很多学生在做题时,忽略了余数0。

通过以下3个例子的讲解,使得学生对十进制转换成二、八、十六进制的方法进一步掌握。

(36)10=(100100)2(39)10=(47)8(27)10=(1B)16

236083971627B

21808441611

29100

240

220

211

2、二、八、十六进制十进制

按位展开,对应位乘以权值(权值即为基数的n次幂,n从0开始),最后将所有乘积相加,所得结果即为十进制数。

(10101)2=()10(67)8=()10(1A2)16=()10

(10101)2=1×

24+0×

23+1×

22+0×

21+1×

20=(21)10

 

2423222120

(67)8=6×

81+7×

80=(55)10

8180

(1A2)16=1×

162+A×

161+2×

160=(418)10

162161160

3、八、十六进制二进制

八进制(或十六进制)数的每一位数字用三位(或四位)二进制数表示,最后将对应的二进制数依次写下来,即为二进制数。

八进制数7、6、5、4、3、2、1、0对应的三位二进制数分别为111、110、101、100、011、010、001和000。

十六进制数F、E、D、C、B、A、9、8、7、6、5、4、3、2、1、0对应的四位二进制数分别为1111、1110、1101、1100、1011、1010、1001、1000、0111、0110、0101、0100、0011、0010、0001和0000。

(642)8=()2(3B5C)16=()2

(642)8=(110100010)2(3B5C)16=(0011101101011100)2

1101000100011101101011100

给学生思考时间,如何将二进制转换成八进制、十六进制?

五、整数和实数

1、整型常量分类

(1)八进制整型常量

以数字0开头,其中由数字0~7组成,如023、076等。

(2)十进制整型常量

最常用的常量,由数字0~9组成,如15、345、-38等。

(3)十六进制整型常量

以0x或0X开头,由数字0~9、字母a~f(或大写A~F)组成,如0x7e、0X4AB等。

整型常量没有二进制的。

2、整型变量分类

(1)短整型变量

类型说明符为:

[signed]short[int],占用2个字节,取值范围为-32768~32767。

(2)基本整型变量

[signed]int,占用4个字节,取值范围为-2147483648~2147483647。

(3)长整型变量

[signed]long[int],占用4个字节,取值范围与基本整型变量相同。

(4)无符号短整型变量

unsignedshort[int],占用2个字节,取值范围为0~65535。

(5)无符号基本整型变量

unsigned[int],占用4个字节,取值范围为0~4294967295。

(6)无符号长整型变量

unsignedlong[int],占用4个字节,取值范围同无符号基本整型变量相同。

整型变量的各种类型,在编程中一定要注意,不要让一个整型变量超出该类型的取值范围,以免发生溢出错误。

可引导学生自己推出每种变量的表示范围。

3、实型常量

(1)小数形式

小数点前或后可以没有数字,但不能同时没有数字。

参考教材P18的例子。

(2)指数形式

可以参考口诀:

“E前E后必有数,E后必须为整数”,讲解P18指数形式的例子。

4、实型变量

实型变量分为:

单精度实型(float)和双精度实型(double)。

float占用4个字节,double占用8个字节。

六、整数在内存中的存储形式

对于整型数据,在内存中都是以补码形式存储的。

用补码存储一个有符号整数,最高位(最左边的一位)存放符号,正数最高位为0,负数最高位为1。

计算规则如下:

正整数:

原码=反码=补码。

负整数:

反码=原码除符号位(符号位为1)以外,数值部分按位取反

补码=反码的末位加1

无符号整数表示的都是正数,所以其中最高位不再存放符号。

在二级C考试中,只需要记住无符号整数65535表示成有符号整数-1,无符号整数65534表示成有符号整数-2,其他依次类推。

以下例子是历年考试中出现过的,通过讲解让学生掌握无符号数和有符号数的区别。

main()

{

unsignedinta;

intb=-1;

a=b;

%u"

a);

}

七、算术运算和赋值运算

1、算术运算符(+、-、*、/、%)

(1)/:

5/2=25.0/2=2.55/2.0=2.55.0/2.0=2.5

(2)%:

5%2=1-5%2=-15%-2=1

这五种算术运算符以/和%为主,进行除运算时,注意两边都为整数的情况;

“%”运算符左右两边必须为整数,余数的符号同被除数的符号相同。

2、算术运算符的优先级

(*、/、%)>

(+、-)

3、算术表达式的计算

根据优先级的高低决定计算顺序。

通过讲解以下表达式的计算过程,使学生掌握算术运算符的优先级。

4*5+8*2%4+12/5=22

4、赋值运算符(=、+=、-=、*=、/=)

赋值运算的一般格式为:

变量=表达式

(1)+=a+=6a=a+6

(2)-=a-=6a=a-6

(3)*=a*=6a=a*6

(4)/=a/=6a=a/6

任意一种赋值运算符的左侧必须为变量,不能是表达式和常量;

整个赋值表达式的值是最左边变量的值。

当赋值运算符左右两边类型不一样,系统会自定进行类型转换。

八、强制类型转换

强制类型转换的格式为:

(类型名)表达式

在二级C考试中,经常考强制类型的转换格式,尤其是一对小括号的位置。

九、自加、自减运算符

1、自加、自减运算符(++、--)

自加、自减运算符的运算对象只能是变量,运算符可在变量的前面,也可以在变量的后面,形如i++、++i、i--、--i。

2、自加、自减的运算规则

自加:

i++先用i的值参与运算,再使i的值加1。

++i先使i的值加1,再让i参与运算。

自减:

i--先用i的值参与运算,再使i的值减1。

--i先使i的值减1,再让i参与运算。

自加、自减运算是一个难点,可以参考以下例子进行详细讲解,便于学生掌握。

{intm=011,n=11;

%d,%d\n"

++m,n++);

/*输出结果为:

10,11*/

--m,n--);

9,12*/

3、自加、自减运算的注意事项

(1)只能和变量结合,如(i++)++是不合法的。

(2)运算结合方向是从右到左。

参照教材最后附录三,为学生讲解优先级和结合性,完成对表达式“-x++”的分析。

十、逗号运算符及逗号表达式

1、逗号运算符(,)

在逗号表达式中,逗号运算符具有从左向右的结合性,最后一个表达式的值是整个逗号表达式的值。

2、要和变量多余的情况区别开(参考P24、例2)

为学生讲解,将P24、例2中的最后一条语句改为“printf("

%d\n"

a1,a2);

”的情况,使得学生注意逗号运算与变量多余的区别,这是二级C考试中,经常会出错的。

3、优先级别(重点讲解P24、例3)

在所有运算符中,逗号运算符优先级最低。

十一、C语言中的语句

1、表达式语句

表达式;

2、空语句

;

3、复合语句

{语句1;

语句2;

…语句n;

十二、注释

C语句中有两种注释方法:

(1)//:

只能注释一行

(2)/*…*/:

可注释多行,在“/*”和“*/”之间的都属于注释部分。

注释在程序运行时,不执行,第二种注释需要注意,在二级C考试中出现过,参考教材P26,第4题。

十三、字符数据

1、字符常量分类

(1)一般字符常量

用一对单引号括起来的单个字符,如'

b'

5'

(2)转义字符常量

在一对单引号内,以“\”开头,后跟一个字符,或1~3位八进制数。

另外也可以是1~2位的十六进制数,但必须以“\x”开头(在这里,一定注意x不能是大写的X)。

在二级C考试中,转义字符是必考的,可以参考P28,例1。

更要注意“\”后跟的1~3位八进制数不能以数字0开头。

2、字符变量

定义字符变量的格式为:

char变量名;

字符型数据在内存中占1个字节。

3、字符型数据参与运算

采用其ASCII码进行运算。

字符型数据可以按“%d”和“%c”输出,注意这两者区别。

参考P29,第3题。

十四、位运算

1、位运算符(~、<

<

、>

>

、&

、^、|)

2、位运算注意事项

(1)对象只能是整数或字符型数据。

(2)进行位运算前,一定要先将数据转换成二进制数。

(3)各个位运算符的优先级

字符型数据参与位运算时,采用其ASCII码进行运算。

3、位运算的规则

(1)~:

0变1,1变0。

(2)<

a<

i表示a向左移动i位,右补0。

(3)>

a>

i表示a向右移动i位,左补符号位。

(4)&

a&

ba、b对应的二进制位,同时为1,则结果即为1,否则为0。

(5)|:

a|ba、b对应的二进制位,只要有一个为1,则结果即为1,否则为0。

(6)^:

a^ba、b对应的二进制位,相同为0,不同为1。

在没有舍去数据的时候,<

左移一位表示乘以2;

右移一位表示除以2。

两个相同的数进行按位异或(^),结果为0。

在历年考试中出现过类似的题,参考P31、例2,学生只要记住该规则,就可节省过多的做题时间。

其次要掌握“&

”和“|”,可以参考P31,例1进行讲解。

第二章数据输出与输入

printf函数(难点)

3~4

putchar函数

60%

scanf函数(难点)

getchar函数

一、数据输出函数printf

1、printf函数的一般格式:

printf(格式输出控制,输出列表)

(1)格式输出控制:

需用一对双引号括起来,双引号内包含“格式说明”和“普通字符”两部分。

(2)输出列表:

需要输出的数据,多个数据之间用逗号隔开。

2、格式说明

“格式说明”由“%”和格式字符组成,如%d,%c,更多格式说明请参考P34,表2-1。

它的作用是把输出数据转换为指定格式输出。

在printf函数中,若格式说明的个数少于输出项的个数,多余的输出项则忽略不输出,这是二级C考试中经常出现的题目,可参考P34,例2进行讲解。

3、普通字符

普通字符会原样输出,转义字符需要输出对应的字符。

printf函数输出数据时,学生做题很容易忽略普通字符的输出。

在二级C考试中,这类题目常出现,可以通过以下例子进行讲解。

inta,b;

a=10;

b=15;

a+b=%d"

a+b);

4、数据输出实例(已知inta=66;

floatb=123.56;

通过以下各输出语句,讲解输出函数的各种格式。

(1)printf("

a);

66

(2)printf("

%3d"

□66

(3)printf("

%-3d"

66□

(4)printf("

b);

123.560000

(5)printf("

%7.2f"

□123.56

(6)printf("

%-7.2f"

123.56□

%c"

B

(7)printf("

%x"

42

5、putchar函数

格式为:

putchar(c)

这里的c只能是字符型变量或字符型常量,即putchar函数只能输出字符型数据。

二、数据输入函数scanf

1、scanf函数的一般格式:

scanf(格式输入控制,输入数据列表)

格式输入控制与printf函数的格式输出控制相同。

输入数据列表必须是一个或者是多个合法的地址。

输入函数是一个难点,学生一般掌握的情况不是很好,建议老师讲解时放慢速度。

2、scanf函数的注意事项

(1)输入数值型数据时,各数值间的分隔符可以是:

空格、Tab、回车。

(2)输入字符型数据时,空格、Tab、回车都会被认为是字符,而不是分隔符。

(3)“格式输入控制”中的普通字符,在输入数据时一定要原样输入。

(4)跳过输入数据,在%和格式字符之间加一个“*”。

以上注意事项,在二级C考试题目中经常出现,可以通过以下数据输入实例,进行讲解。

3、数据输入实例(已知charc1,c2;

intc,d,e;

(1)scanf("

%d%d%d"

&

c,&

d,&

e);

输入:

5<

空格>

6<

7<

回车>

Tab>

6<

7<

//以上三种输入方式,c、d、e的值分别都为5、6、7。

(2)scanf(“%d,%d,%d”,&

5,6,7<

若输入第一个数据后,使用了任意一种分隔符,则只确定输入了c的值为5,d和e为本身的初始值,若没有初始值,则为不定值。

在C语言中,没有指定值的任何类型的变量,在输出时为不定值。

(3)scanf(“%d%*d%d%d”,&

c,&

d,&

2<

3<

4<

//c、d、e的值分别为2、4、5

(4)scanf("

%c%*c%*c%c"

c1,&

c2);

b4<

//c1、c2的值分别为a、4

(5)scanf("

%2d%d%d"

123<

456<

//c、d、e的值分别为12、3、456

(6)scanf("

1<

//c的值为1、d、e为不定值

4、getchar函数

getchar()

该函数称为输入字符型数据的函数,只能用来接收一个字符型数据。

在输入字符型数据时,空格、Tab、回车都属于字符。

在二级C考试中经常出现该类题目,可以参考以下例子,进行讲解。

charc1,c2,c3,c4;

c1=getchar();

c2=getchar();

c3=getchar();

c4=getchar();

%c%c%c%c"

c1,c2,c3,c4);

运行程序时,输入:

b<

第三章选择结构

关系运算符及关系表达式

1~3

逻辑运算符及逻辑表达式

if语句

嵌套的if语句(难点)

3~5

条件表达式、switch语句(难点)

goto语句

一、关系运算与逻辑运算

1、关系运算符

=、<

、<

=、==、!

=。

2、关系运算符的优先级别

(>

=)>

(==、!

=)

3、关系表达式

关系表达式的运算结果有两个:

0和1,0代表“假”,1代表“真”。

4、逻辑运算符

&

、||、!

5、逻辑运算符的优先级别

!

>

&

||

6、逻辑表达式

逻辑表达式的运算结果有两个:

0和1,0代表“假”,非0代表“真”。

“&

”和“||”存在“短路”现象。

运算符左边的表达式的值为“假”,则不再计算&

运算符右边的表达式的值;

||运算符左边的表达式的值为“真”,也不再计算||右边的表达式的值。

可以参考P45,第2题、第6题进行讲解。

在二级C考试中,经常考计算关系和逻辑表达式的值。

在计算的过程中,要注意运算优先级:

算术运算>

关系运算>

||>

赋值运算。

二、if语句

1、简单的if语句

if(表达式)语句

在二级C考试中,经常考查简单的if语句。

当表达式成立时,默认只有一条执行语句,可以通过以下例子进行讲解。

inta=10,b=50,c=30;

if(a>

b)a=b,b=c;

c=a;

%d,%d,%d\n"

a,b,c);

2、if…else语句

if(表达式)

语句1

else

语句2

3、多分支if…else…if

if(表达式1)

elseif(表达式2)

elseif(表达式3)

语句3

语句n

if语句中表达式可以是任意合法的表达式(在二级C考试中,经常用赋值语句作为if语句的表达式)。

语句如果是复合语句必须用“{}”将语句括起来,否则会出错,可以参考以下例子进行讲解。

main()

inta=0,b=0,c=0,d=0;

if(a=1)b=1;

c=2;

elsed=3;

%d,%d,%d,%d\n"

a,b,c,d);

4、嵌套if结构中的else和if的配对原则

else总是和离它最近的且不带else的if配对,可以参考以下例子进行讲解。

#include<

stdio.h>

{intx=1,y=2,z=3;

if(x>

y)

if(y<

z)printf("

%d"

++z);

printf("

%d,"

++y);

x++);

三、条件表达式、switch语句、goto语句

1、条件表达式

基本格式为:

表达式1?

表达式2:

表达式3

可以通过以下例子进行讲解,便于学生对条件表达式的分析和理解。

intx,a=2,b=5;

x=(a<

b)?

a:

b;

x);

在嵌套的条件表达式中,运算从右向左计算,可以参考P56、第5题进行讲解。

2、switch语句

switch(表达式)

case常量表达式1:

语句1;

break;

case常量表达式2:

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

当前位置:首页 > 外语学习 > 韩语学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1