中职《C语言编程基础2版》教学指南 工信版.docx

上传人:太** 文档编号:72704877 上传时间:2023-02-13 格式:DOCX 页数:23 大小:52.59KB
返回 下载 相关 举报
中职《C语言编程基础2版》教学指南 工信版.docx_第1页
第1页 / 共23页
中职《C语言编程基础2版》教学指南 工信版.docx_第2页
第2页 / 共23页
点击查看更多>>
资源描述

《中职《C语言编程基础2版》教学指南 工信版.docx》由会员分享,可在线阅读,更多相关《中职《C语言编程基础2版》教学指南 工信版.docx(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、c语言编程基础(第2版)教学参考资料标准字符输出函数putchar。是有参函数,其作用是向终端输出一个字符, 其一般形式为:putchar(ch)参数ch可为字符型变量、字符码(整型常量)或字符本身,其函数类型是 整型。4.2按格式输入输出函数编程的核心就是处理输入输出,这一节是本章的重点,也是本书的重点章 节之一。其中输入输出函数中格式字符的用法也是本章的难点。printfO函数,在前面各章节中已用到,它的作用是向终端输出假设干任意 类型的数据.这是一个带参数的函数,一般形式为:printf (控制参数,输出参数);其中的“控制参数”是用双引号括起来的字符串,它包括三种信息:一是 格式转换控

2、制符,由“犷和格式字符组成;二是提示串,可原样输出;三是转义 字符,输出一些操作行为。输出参数是需要输出的数据,可以是变量或表达式表 列,其项数必须与控制参数中的格式转换控制符个数相同。重点要掌握好格式字 符的应用,九种格式符全面记忆有一定难度,要慢慢熟悉多加练习。常用的d 格式、f格式、c格式、s格式,要熟练掌握起来。scanfO函数可以用来输入任何类型的多个数据。一般形式为:scanf (控制参数,地址表列)“控制参数”的含义同printf函数,地址表列是由假设干个地址组成的表列, 可以是变量的地址或字符串的首地址。使用scanfO函数时要注意三点:控制参数局部的提示串必须是键盘输入 的一

3、局部。在给多个输入项输入数据时,键盘输入的各项信息之间可以用空 格,TAB或回车作为分隔符。&是地址运算符,要注意其用法,该用时不能丢 掉。输入格式的应用比输出格式应用会更难一些,一定要结合书中的例题仔细 讲解清楚,对于什么样的格式控制怎样输入才合法要多加练习。课后习题和上机 实习要认真做好。本章课时建议讲授3学时,上机操作2学时(输入格式的应用可结合实习在机房讲解)。第5章 控制结构程序设计本章教学提要教学重点:关系表达式与逻辑表达式;条件选择语句if的三种形式及应用;开关语句switch的用法;循环语句for while和do-while的应用;教学难点:不同循环语句的适用范围;多重循环的

4、应用。本章教学内容、要求及建议本章重点介绍了控制语句中的分支语句、循环语句以及相关的辅助语句和 表达式。这些控制语句是学习较复杂程序设计的基础,而相关的关系表达式和逻 辑表达式又是学好分支结构和循环结构的基础。因此,本章的内容十分重要,所 需学时和其他各章相比也是最多的。5. 1关系表达式与逻辑表达式学好这一章要非常熟悉六种关系运算符和三种逻辑运算符的应用,要弄清 什么是关系表达式什么是逻辑表达式,要能熟练地掌握两种表达式的运算规那么, 能准确判断表达式的值。注意,在关系运算中C语言没有布尔量,关系成立其结果为1,反之为0; 逻辑表达式的值是一个逻辑量,以0代表假非0代表真。建议讲解如何求表达

5、式 的值时,多举一些结合日常的生活实例。6. 2条件选择语句ifif语句共有三种形式。第一种和第二种很容易掌握,程序走向简单,条件 成立就执行if中语句,否那么就执行else中语句或后面语句。第三种形式和扩展 的嵌套形式,使用起来有一定的难度,一不留神就会搞错关系将程序写错。第三种形式如下:if(表达式1)语句1else if(表达式2) 语句2else if(表达式n)语句nelse语句 n+1扩展的嵌套形式如下:if()if()语句1内嵌ifelse 语句2elseif()语句3内嵌ifelse 语句4使用时要注意三点:if语句中,在每个语句后都有一个分号,整个语句 结束处有一分号。每个分

6、号都是必不可少的,否那么将出现语法错误。但不要误认 为上面是用分号隔开的假设干语句,它们仍属于同一个if语句。在if和else 后面可以只含一个内嵌的操作语句,也可以有多个操作语句,此时要用花括号 “ ”将几个语句括起来组成一个复合语句。在if与else的配对关系中, else总是与它上面最近的尚未与else配对的if配对。5. 3开关语句switch开关语句是多分支选择语句,比用if嵌套进行多路选择要清晰简单,应很 好掌握。这种语句非常适合开发应用程序中的菜单程序编写,请重视书中例5. 6 题的讲解。但是,使用switch语句只能判断一个表达式的值与一个常量是否相 等关系,而不能直接判断大于

7、、小于等复杂的关系,这一点要加以注意。5. 4循环语句循环语句是算法语言中应用最普遍也是最重要的语句,c语言的循环语句在 书写上具有简洁和多变的特点应加以注意。C语言一共提供了三种循环语句:for循环,它的功能最强。不仅可以用于循环次数已确定的情况,而且 可以用于循环次数不确定而只给出循环结束条件的情况。其常见的形式为:for (表达式1;表达式2;表达式3)语句其中语句是循环体,可以是一个语句,也可以是用括起来的多条语句。 执行时先求表达式1的值,然后判断表达式2的值是否为0,不为0那么执行循环 体(为0结束循环执行for下面的语句),此后求表达式3的值,在返回来判断 表达式2决定程序走向,

8、一直持续到该值为0止。for循环也可写成如下容易理 解的形式:for (循环变量赋初值;循环结束条件;循环变量增值)语句例如:for (i=l; i=10; i+) s=s+i;一看就知道这是要求1+2+3+10的和,循环次数是的。for循环中表达式的应用非常灵活,不同形式或是否省略,会使循环的功能 各不相同,要把书中提出的特殊情况举例讲清。while循环,其一般格式为:while (表达式)语句其中表达式是循环能否继续重复的条件,循环体即语句局部。首先计算表 达式,假设其值非零,那么执行循环体并重新计算表达式,循环一直继续到表达式的 值变成零为止,然后从该语句的下一个语句继续执行下去。该循环

9、非常适合于循环次数已确定的情况,例如:i=l;while (i=10) s=s+i;也可以用于循环次数不确定的情况,如书中的例5. 12。不输入结束标志, 循环就一直进行下去。do-while循环,其一般格式为:do语句while (表达式);其执行过程是:先执行循环体(即语句局部),然后判别表达式,当表达式 为非零时,返回重新执行语句局部,如此反复,直到表达式的值等于0为止,此 时循环结束。该循环的特点是至少要执行一次循环体,先执行后判断。请注意:以上讲授的三种基本循环结构,在一般情况下是可以互相替代的, 但使用时会有一些差异,要注意区别对待。千。r循环功能强、使用灵活,是人们 使用最普遍的

10、。在解决具体问题时究竟使用哪一种结构,要看使用者的习惯、风 格和写出程序的可读性、可维护性等。讲课时要启发学生多锻炼自己独立处理问 题的能力和个性开展能力。(4)多重循环也称为循环嵌套,即在一个循环体内又包含另一个循环。三种 循环方式既可以自身构成嵌套,也可以互相嵌套。例如:for(i=l; i=9;i+)for(j=l;j=i;j+)printf( d” ,i*j);for(i=l;i=4;i+)j=l;while(j num2 、num9 0一维数组的引用在C语言中,使用数值型数组时,只能逐个引用数组元素而不能一次引用整个数组。要讲清数组元素的引用是通过下标来实现的。一维数组中数组元素的

11、表示形式为:数组名下标一维数组的初始化对数组进行初始化,就是在定义数组时给数组元素赋初值。一维数组初 始化的一般形式为:int a10 = 0, 1,2, 3, 4, 5, 6, 7, 8, 9);二维数组的定义和引用二维数组的定义其一般形式为:float a43;该语句定义了一个名为a的二维数组,数组的类型为float型,数组中共 有4X3=12个元素。分别为a00、有0、a0、al 0 . a、 al2K 、a3 2 0二维数组的引用二维数组中数组元素的表示形式为:数组名下标1下标2二维数组的初始化二维数组初始化的一般形式为:int b3 4 = 1,2, 3,4, 5, 6, 7,8,

12、9, 10, 11, 12);注意:定义数组长度时只能用常量表达式而不能使用变量;数组中的各 个元素在机内存贮在一片连续的存贮单元中,二维数组中的各个元素在机内是按 行的顺序存放的;引用数组元素时,下标不能超出范围;对数组进行初始化时, 除一般形式外还有其他形式要给学生讲全。6.2 字符型数组学习这一节要掌握字符型数组的定义、初始化、引用方法,特别要注意字 符串与数组的关系。掌握字符串的输入输出处理是本章的难点,但并不是很难。C语言中,字符数组一个最重要的作用就是用来处理字符串。C语言中有字 符串常量,却没有字符串变量,字符串的输入、存贮、处理和输出等操作,都必 须通过字符数组来实现。字符串常

13、量可以在字符数组定义时作为初始化赋值给数 组,但不能在其他地方出现给数组赋值的语句。字符串的输入常用函数有两个:scanf()和gets。输出的常用函数也有两 个:printfO和putsOo要注意输入输出的各两个函数使用的区别,要注意数 组长度与存储字符数的关系,要注意用scanf()函数以%s的形式输入字符串 时,存入到字符数组中的内容开始于输入字符中的第一个非空白字符,而终止于 下一个空白字符(包括:n、t、要会使用常用字符串处理的几个函数,如:测试字符串的长度的strlenO 函数,连接两个字符串的strcat ()函数,比拟两个字符串的大小的strcmp()函 数,复制字符串的str

14、cpy ()函数等。注意:本章中给出了多个应用举例,主要是应用本章学得的知识练习设计 应用程序,对初学者来说有一定难度,但只要把书中的例题掌握,并认真做好课 后习题以及上机练习,就能将数组运用自如。本章课时建议讲授6学时,上机操作4学时(利用机动学时2)。第7章函数本章教学提要教学重点:函数的定义和调用;函数参数和函数的返回值;变量的作用范围。教学难点:函数的递归调用;主调函数与被调函数之间的数据传递。本章教学内容、要求及建议函数是c语言程序的基本组成单位,利用函数可以实现程序的模块化,使 得复杂问题得以轻松解决,这是学习本章的根本目的。本章主要介绍函数的定义 和调用方法,以及与函数有关的一些

15、基本概念。7. 1函数概述通过本节,进一步弄清为什么要使用函数,什么是库函数什么是自定义函 数,为什么说利用函数实现程序模块化是C程序的一大特点。8. 2函数的定义函数的定义主要是确定函数的名称、函数的类型、函数的参数以及该函数 完成什么功能。函数定义的一般形式如下:类型标识符 函数名(形式参数表)形式参数说明(函数体)特别要注意,并不是每个函数在定义时都必须有形式参数,如果函数有形 参,那么必须说明形参的类型。下面是两种说明形参类型的写法:max(x , y)int x , y ; 和max(int x , int y)( 还要注意,一个c程序由主函数和假设干个自定义函数组成,各个函数在程

16、序中的定义是相互独立的,不能在一个函数的函数体内部定义另一个函数。7. 3函数参数及返回值通过本节要弄清为什么要使用参数,形参和实参的关系如何,函数的返回 值与return语句的关系怎样,以及return语句的作用及使用的几种方式等。还 要了解空值类型函数的作用及用法。7.4 函数的调用函数调用有四种形式:语句调用,通常用于调用一个不带回返回值的函数; 表达式调用,用于调用带有返回值的函数,其值参与表达式的运算;递归调用, 一般在遇到同一个函数需反复调用时使用;嵌套调用,用于调用被调函数时,还 需调用下一层子函数才能完成其功能时使用。函数递归调用是本节的难点,难在对递归算法过程的理解和弄清什么

17、是递 归。要通过例题反复讲解说明使学生明白,并要了解递归调用的优缺点。在函数调用时,要特别注意主调函数与被调函数之间的数据传递。如:调 用一个函数时需要参数吗?函数是否有返回值?函数执行完后哪些变量的值发 生了变化?等等。如:1 .主调函数通过函数参数向被调函数传递数据。如果是基本数据类型的变量作函数参数,那么数据的传递是单向传递(由主调函数传给被调函数),也称为值传递。2 .被调函数通过return语句向主调函数传递数据。函数的值可以通过return语句返回,传递给主调函数中的表达式。需要注意的是,通过return语句,只能得到一个函数的返回值3 .利用数组名作函数参数,实现双向数据传递。C

18、语言规定,数组名代表数组的首地址,所以,数组名作函数参数时,是将 该数组的首地址由实参传递给形参,即实参数组与形参数组会共用一个相同的数 组首地址和一段相同的存储单元。所以,当形参数组元素的值发生改变时,实参 数组元素的值也会随着改变。7.5 数组作函数参数函数参数除了可以是简单变量之外,还可以是数组。数组作函数参数分两种情形,一种是数组元素作函数参数,另一种那么是数组名作函数参数。数组元素作函数参数数组元素可以作为函数的实参,这种用法与简单变量作函数实参完全相同, 这时函数的形参必须是简单变量。 数组名作函数参数数组名作函数参数时,实参和形参都应为数组名,此时实参与形参的传递 为“地址传递二

19、所谓地址传递是指在调用函数时,系统并没有给形参数组分配 新的存储空间,而只是将实参数组的首地址传送给形参数组,使形参数组与实参 数组共用同一数组空间。因此,函数中对形参数组的修改,就是对实参数组的修 改,在使用时特别要注意这一点。变量的作用域变量的作用域是指变量的有效范围。程序中各个函数之间的通信可以通过 参数传递来实现,也可以通过使用公共的数据来实现。那么,哪些数据可以被各 个函数共用而哪些数据又不能共用呢?这就涉及到变量的作用范围问题。根据变 量的作用范围不同,可将变量分为局部变量和全局变量。局部变量是指在函数内部或程序块内定义的变量。局部变量只在定义它的 函数或程序块内有效。全局变量是指

20、在所有函数之外定义的变量,其作用范围是从定义点开始,直 到程序结束。利用全局变量可以实现主调函数与被调函数之间的数据传递,这是由于全 局变量在整个程序中可以被所有的函数使用的原因。特别是当你希望从被调函数中得到一个以上的返回值时,就可以使用全局变量。这里需要强调的一点是,不提倡大量使用全局变量。这是因为结构化程序 设计要求各个函数模块之间的联系应尽可能的小,而使用全局变量那么会增大各函 数模块之间的联系。注意,主调函数与被调函数之间的数据传递也是本章的难点,要多通过实 例进行理解。变量的生存期变量的生存期是指变量存在的时间长短,根据变量生存期的不同,可以将 变量分为动态存储变量和静态存储变量。

21、动态存储是指在程序运行期间根据需要动态分配存储空间的存储方式,即 需要时就分配存储空间,不需要时就释放。如形式参数就属于动态存储变量。静态存储是指在程序运行期间分配固定的存储空间的存储方式。如全局变 量就属于静态存储变量。注意:根据变量的作用域和生存期的不同,可以将变量分为4类存储类别, 如表77所示。表7-1变量的存储类别存储类别作用域生存期存储位置auto局部动态内存register局部动态寄存器stat i c局部静态内存extern全局静态内存7. 7函数的作用域根据函数是否能被其它文件调用,可将函数分为内部函数和外部函数。能 理解内部函数和外部函数的作用就可以了。本章课时建议讲授6学

22、时,上机操作4学时。第8章文件本章教学提要教学重点:文件的存贮方式与文件指针简介;文件翻开与关闭函数的使用;为了配合C语言编程基础(第2版)课程的教学,表达教材的编写特 色,更好地为读者服务,编写了此教学参考资料。教学参考资料内容主要有四个 局部:第一局部是教学指南,包括了课程性质与任务、课程内容和要求、教学目 标、教学重点、难点、建议及教学时间分配等。第二局部是书中所有习题的参考答案。第三局部是上机实习中的相关解答。第四局部是电子教案局部,采用PowerPoint课件形式。教师可以根据不同 的教学要求按需选取、重新组合或自己制作一些典型页面。限于编者水平,教学参考资料中有错误或不妥之处,请读

23、者给予批评指正。C语言编程基础(第2版)教学指南一、本课程的性质与任务本课程是中等职业学校计算机及应用专业的一门主干专业课。其主要任务是 文件的读写操作。教学难点:随机定位与随机读写函数应用。本章教学内容、要求及建议文件是存贮在外部存贮设备(如磁盘)上的信息集合,一般可分为程序文件 和数据文件,本章介绍的文件操作,主要是对磁盘数据文件的使用和操作。8. 1 C语言文件概述本节重点掌握的内容是数据文件的相关概念,如存储方式、文件指针等。C 语言数据文件存贮在磁盘上有两种形式,一种是按ASCII码存贮,称作ASCII码 文件;一种是按二进制码存贮,称作二进制文件。要了解两种文件的优缺点。对文件操作

24、要通过标准函数实现,在使用文件操作函数时,必须定义一个文 件指针变量,只有通过文件指针变量,才能找到与其相关的文件,实现对文件的 访问。定义文件指针变量的格式如下:FILE *fp8. 2文件的翻开与关闭翻开文件要使用函数fopen(),其一般形式为:文件指针变量:fopen(文件名,方式”);例如:fp=fopen (v c: datafile. dat , w);翻开文件路径时要注意分隔符必须是“”而不是“(因为C语言中的 转义字符是以“”开头)。关闭文件要使用函数fcloseO,其一般形式为:fclose(文件指针变量);例如:fclose (fp);关闭文件,就是使文件指针变量不再指向

25、该文件,同时将尚未写入磁盘的数 据写入磁盘,从而保证写入文件的数据完整。这一节要重点掌握两种文件的翻开“方式”。8. 3文件的读写通过本节,要重点掌握向文件读利向文件写的操作函数的应用。fgetc()和fputc()是从文件读一个字符和向文件写一个字符的函数,其一 般使用格式为:字符变量=fgetc(文件指针变量); 例如:c= fgetc (fp);fputc (字符变量,文件指针变量);例如:fputc (c, fp);fgets()和fputs()是从文件读一个字符串和向文件写一个字符串的函数, 其一般使用格式为:fgets (字符串变量,字符串长度,文件指针变量);例如:fgets (

26、a, n, fp);fputs (字符串变量,文件指针变量);例如:fputs (a, fp);fscanf ()和fprintf()两个函数可以实现对文件按格式读写操作。其使用 格式如下:fscanf (文件指针变量,格式控制串,参数表列);fprintf (文件指针变量,格式控制串,参数表列);8. 4随机文件的读写本节是本章的教学重点也是教学难点。它一共提供了三个函数,读写函数 使用并不难,只是随机定位函数使用时,其指针位移量的计算稍微有些难度。请 注意例8. 13的应用。文件可以进行顺序读写,也可以进行随机读写,关键是如何控制文件的位置 指针。用fseekO函数就可以实现改变文件的位置

27、指针,其应用的格式为:fseek (文件指针变量,位移量,起始点);例如:fseek(fp, 100L, 0);fseek(fp, 100L, SEEK_SET);fread()与fwrite()是用于随机文件读写的两个函数,其一般使用格式如 下:fread(ptr, size, n, fp);fwrite (ptr, size, n, fp);fread是从指定的文件(fp)中读n个数据块,数据块的长度为size个字节, 读到ptr指针所指的内存地址去。fwrite是从ptr指针所指的内存地址起,读n 个长度为size个字节的数据块写到指定的文件中去。本章课时建议讲授2学时,上机操作2学时(

28、利用机动学时2)。第二篇选用模块选用模块共有两章,可根据不同地区、不同学制(3或4年)、不同基础、 不同办学条件,进行酌情选用。第9章编译预处理本章教学提要教学重点:宏定义;包含文件。教学难点:条件编译。本章教学内容、要求及建议C语言提供了编译预处理功能,它是对C语言的一种扩充。预处理命令以“# 开头,它们可以出现在程序的任何地方,但均在编译之前被处理。编译预处理命 令的使用,对提高程序的可读性、可移植性、灵活性及节省程序开发本钱都有很 重要的意义。因此,不管是否选用本章作为教学的主要内容,其重点局部也应在 其它章节中穿插地加以介绍。9. 1宏定义宏定义分为带参数的宏定义与不带参数的宏定义两种

29、形式。不带参数的宏定 义一般格式如下:define宏名字符串例如:define PI 3. 1415926带参数的宏定义一般格式如下:define宏名(参数表)字符串例如:#def ine SUM(x, y) x+y要弄清宏定义的定义方法,使用方法以及撤消的方法。10. 2包含文件要弄清什么是包含文件,为什么要用包含文件,怎样使用包含文件。使用 包含文件命令的格式有如下两种:格式 1: ttinclude filename格式 2: include filename”例如:include ttinclude string, h”3条件编译通过本节了解条件编译命令有几种形式,使用条件编译有什么好

30、处等。这 一节虽然是本章的难点,但内容不多,平时使用又不普遍,可不用花大力气,只 是让学生了解就行了。本章课时建议讲授2学时。第10章指针本章教学提要教学重点:指针的概念、定义和操作;指针与数组;指针在编程中的使用方法。教学难点:指针与函数。本章教学内容、要求及建议在本章将介绍C语言中最复杂、最重要的一种数据类型一一指针类型。正 确而灵活地运用指针可以有效地表示复杂的数据结构,方便地使用字符串、数组 和机器语言所能完成的功能,从而可以使程序清晰、简洁,并生成紧凑、有效的 代码。对每一个想深入学习C语言的人,都应当学习和掌握指针。11. 1指针的概述这一节要弄清什么是指针,指针变量如何定义,取地

31、址运算符&和指针运算 符*的应用。指针变量就是存放地址的变量,指针变量定义的一般形式为:类型标识符*指针变量例如:int *pl;注意,指针变量不同于整型、实型、字符型和其它类型的变量,它是专门 存放地址的。上面定义pl是指针变量,千万不要把*pl理解为指针变量。*pl是指针变量所指向的变量,它是一个整型变量。取地址运算符&的使用形式一般为:pl=&x;该语句中&X表示取变量X的地址,然后赋给指针变量pl,即pl指向Xo注 意,不要把语句写成“*pl=&x; 因为X的地址是赋给指针变量pl而不是赋给 整型变量*pl。12. 2指针与数组在C语言中,指针与数组关系密切,任何能由数组下标完成的操作

32、都可由 指针来完成。一般情况下,使用指针能使目标程序占用存储空间少,运行速度快。这一节要重点掌握如何使指针指向数组和数组元素、下标法和地址法的区 别、以及如何利用字符指针访问字符串。13. 数组的指针例如:int a3;int *p; p=a; p=&a0;例中说明,定义了一维数组a3和指针变量p,然后将p指向数组a的首 地址(数组名代表数组的起始地址)。数组a的首地址和数组元素a0的地址&a0 是等价的,而这时的*P就是a0的值。我们可以通过a+1地址找到数组元素 al,即a+1地址所指向的元素。*(a+l)(地址法表示)与al(下标法表示) 是等价的,都是指数组a中下标为1的元素值。也可以

33、通过“p二&al; ”使指针 P指向数组元素al,这样*p就是al的值。二维数组的指针例如:int a3 4;int *p; p=a0;例中第一行说明,定义了二维数组a34,它有三行四列共1 2个元素。其中a是二维数组的首地址,可把a看作由三个元素a0、al a2组成的一维数组。所以:a+0或a等价于&a0a+1等价于&ala+2等价于&a2或*(2+0)等价于a0* (a+l)等价于al:* (a+2)等价于a 2:也就是*(a+i)等价于ai, a+i等价于&ai。而每个元素ai (0=i而2)相当于由四个元素ai 0、ai、ai、 ai 3组成的一维数组。ai+j 等价于(0=j=3)(

34、ai+j)等价于 ai j所以 *(a+i)+j 等价于&ai j, *(*(a+i)+j)等价于例中第二行说明,定义了指针变量p,然后将P指向数组a的首地址。我们 可以通过指针的运算P+等来访问数组的各元素。二维数组的指针比一维数组 的指针运用起来要难一些,尽量通过实例讲解清楚。指向字符串的指针在C语言中,可以通过定义字符数组和定义字符指针来存取所需的字符。 例如:char str口=“a string;char *p; p=str;例中说明,定义了一个字符数组str和指针变量p,然后将p指向数组str 的首地址,也就是指向str 0 o可以通过“put地ar (*也”输出str 0,利用循

35、 环程序使用“ put char (*p+)”输出整个字符串。10. 3指针与函数指针既可以作为函数间传递的参数,也可以作为函数的返回值类型。本节 主要介绍函数与指针的关系以及如何将指针与函数配合使用。这是本章的难点, 要多通过程序实例进行讲解,课后多做一些习题,熟能生巧。指针变量作为函数参数时,可以传递一个变量的值,但这个值是另外一 个变量的地址。因此,这种把变量的地址传递给被调用函数的方式称为“传递地 址”方式。例如:int x, y, *pl, *p2;pl=&x; p2=&y;swap (pl, p2);例中,在调用swap。函数时,将指向整型变量x和y地址的指针变量pl 和p2作为函

36、数参数进行传递。指针作为函数的返回值类型,可以返回指针指向的变量。这种返回指针 值的函数,一般定义形式为:类型标识符*函数名(形参表)函数体例如:int *max(int a , int n)(int *p, i;return (p);)例中说明:在函数max中定义指针变量p,经运算使p指向数组中的最大数, 最后返回指针变量P的值(地址)到主调函数中。指向函数的指针指针变量可以指向整型变量、字符串、数组等,同时也可以指向一个函数。 定义一个指针变量指向函数一般形式为:int (*func)();func=plus;其中plus是返回值为整型的函数,func是一个指向函数(此函数的返回值 为整型

37、)的指针变量。func=plus;”的作用是将函数的入口地址赋给指针变量 func (函数名代表函数的入口处)。本章课时建议讲授6学时,上机操作2学时。使学生掌握计算机编程语言的基本知识,初步掌握程序设计的基本思想和方法, 并具有应用C语言进行简单程序设计的能力,为学生学习计算机及应用专业知识 和职业技能,适应职业岗位需要和具备继续学习的能力打下良好的基础。二、本课程教学目标教学目标可分为基本知识、能力培养和思想教育三个局部。(一)基本知识教学目标1、理解编程语言的基本概念;2、掌握结构化程序设计的方法;3、掌握C语言的基本语法、基本符号、词汇集等;4、掌握数据类型、函数、语句的基本知识及其应

38、用;5、理解编程语言有关算法的思想;6、掌握数组知识和使用方法;7、初步掌握文件的使用方法;8、初步掌握编程语言的指针及使用方法。(二)能力培养目标.具有使用C语言编程的能力;1 .掌握结构化程序的设计方法和技巧;2 .掌握上机调试C语言程序的方法;3 .具有阅读程序的能力。(三)思想教育目标.初步具备逻辑思维能力;1 .具有严谨的学风、创新意识和创新精神、科学的求学态度;2 .具有互助合作的团队精神。三、本教材编写的特色本教材仍保存了原版的基本结构和风格:紧扣教学大纲,在教学内容安排上 采用模块化、单元化的结构;在表达方法上采用由浅入深、由易到难的原那么(且 尽量将难点分散);在实践安排上增

39、加上机单元,突出技能训练。在每一局部内 容中,都有基本概念介绍、知识运用举例、编程及算法分析、思考练习题、上机 指导与实践等。这样安排,使学生更容易理解、消化、掌握各单元、各模块的学 习内容。本次再版做了不少改动和更新,使本书更加突出了实用性、科学性和先进性。如:对原版中的某些概念进行了重新归类;有的章节在标题、组织结构、以及行 文等方面都作了较大的改动;对各章的例题、习题、上机实训内容进行了修订、 更新和扩充。为了训练学生的编程能力,书中列出近150个实用例题,为了锻炼学生的编 程技巧,习题中安排了 90多道、上机实习安排了 70多道程序练习。通过实例讲 解、作业和上机,一定能让学生很好地掌

40、握C语言程序设计的学问。四、全书内容和参考学时安排本教材教学大纲给出的参考学时数为72学时,其中授课时间为44学时,上 机实习20学时,机动8学时。根据各章内容的多寡,我们把机动学时做了初步 分配,基本想法是加在上机实习上,有的讲授内容可以结合上机进行讲解;对于 设备缺乏的学校,可将机动学时加在讲授学时上,而上机练习适当少些。全书内 容和参考学时安排表如下:分类序号课程内容学时数基础知识模块1C语言概述2+(2)2基本数据类型和简单程序设计63表达式与运算符3+(2)4数据的输入与输出55控制结构程序设计166数组8+(2)7函数108文件4+可选模块9编译预处理210指针8机动8合ir72五

41、、教学提要,教学内容、要求及建议第一篇基础知识模块基础知识模块共有八章,是中等职业学校计算机及应用专业3、4年制学生 必须掌握的内容。C语言概述本章教学提要教学重点:c语言的特点及一些基本概念;c语言源程序的构成、格式及结构特点;C语言程序的编辑、运行。教学难点:函数的构成;Turbo C集成环境的使用。本章教学内容、要求及建议人们和计算机打交道时,要使用计算机语言。编程语言是计算机语言的一 种,也是最重要的计算机语言;本章介绍编程语言C语言的开展历史、特点及 基本概念。这是为学好C语言打基础的章节,不要认为是概述就给予轻视。1. 1 C语言简史及特点通过本节了解并熟悉编程语言C的开展历史、特

42、点及其种类和适用范围。2. 2 C语言程序这局部是全章的核心内容,要求学生熟练掌握C语言程序的构成、书写格式 和结构特点等。学习本节,还要掌握c语言使用的基本符号和标识符的作用以及 构成规那么。有关特殊符号和保存字等内容,可通过后续课程逐渐熟悉。全面理解 函数的构成有一定的难度,要适可而止,通过第七章讲解后学生才能有深入的体 会。3. 3 C语言集成开发环境本节的内容是实践教学模块中的内容,主要介绍C语言程序的处理步骤和 Turbo C集成环境的操作使用方法。建议与本章上机实习课结合起来在机房讲, 一面讲解一面操作。本章课时建议讲授2学时,上机操作2学时(利用机动学时)。第2章数据类型和简单程

43、序设计本章教学提要教学重点:有关c语言数据和程序设计的基本知识;三种基本数据类型介绍和在程序中的应用。教学难点:字符型数据处理;类型的混合运算。本章教学内容、要求及建议数据是语言程序处理的对象,如何编制出最好的C语言程序和如何在程序 中描述数据,是学好C语言的关键。本章主要介绍数据类型(特别是基本数据类 型)和程序设计的相关知识2. 1基本知识了解c语言都使用那些数据类型,特别要熟悉其基本数据类型都包含什么。 要清楚在C语言中常量和变量的概念,以及如何使用。要熟悉C语句的组成和种 类,要懂得什么是结构化程序设计方法。2. 2整型数据重点掌握C语言中整常数的三种表示方法,整型变量的分类;初步掌握

44、整型 变量四那么运算的程序设计及printfO函数在输出不同的整型数据时如何使用格 式转换控制符。2. 3浮点型数据要掌握浮点型常数的两种表示形式:一般形式和指数形式。要熟悉浮点型变 量的类型(单精度型和双精度型)和定义方法,以及它们所能提供的有效数字的 位数。初步掌握浮点数运算的简单程序设计。2. 4字符型数据要熟悉字符常数的一般表示方法及特殊字符常数的扩展表示法(后一种表 示法的熟练应用要下一点工夫才行)。应熟练掌握字符型数据和整型数据的通用 性,及其两种输出方法的使用。初步掌握字符串的存储和定义方式,会编写最简 单的字符和字符串处理程序(这一点实际上并不难,但由于牵扯到数组和指针的 概念还没全面讲到,所以会感到有点难)。4. 5类型的混合运算这一小节的内容不多,但它是本章的一个难点。要熟悉在运算中数据类型 的自动转换和强制转换的规律,以及在什么情况下必须使用强制转换的方法等。本章课时建议讲授4学时,上机操作2学时。第3章运算符与表达式本章教学提要教学重点:有关运算符与表达式的基本概念;算术运算符、算术表达式及常用数学函数的应用;赋值运算和复合赋值运算、条件运算符和逗号运算符的应用。教学难点:运算符的优先级与结合性;自增、自

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁