《《C语言程序设计》学习指导(共18页).doc》由会员分享,可在线阅读,更多相关《《C语言程序设计》学习指导(共18页).doc(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上C语言程序设计学习指导 温东新课程名称:C语言程序设计英文名称:HIGH LEVEL LANGUAGE PROGRAMMING 开课院系:远程教育学院开课学时:68上机学时:30学 分:5授课对象:远程教育学院专升本计算机科学与技术专业学生一、教学目的与课程性质、任务。教学目的:通过本课程的学习,除了使学生掌握C语言的基本语法规范,高级语言程序设计语言的基础知识外,还让学生掌握一些必要的算法,程序设计方法和编程技巧,引导学生开始使用计算机进行问题求解。C语言程序设计课程是计算机科学与技术专业本科教学中主干课程之一。C语言程序设计课程学习的主要任务是提高学生的程序设计能
2、力,教学内容主要包括C语言的基本语法规范,高级语言程序设计语言的基础知识,使用计算机进行问题求解所需的一些必要的算法,程序设计方法和编程技巧。二、教学要求该课程开设位于本科教学的第一学期,课程的教学不仅讲授C语言的基本语法规范,高级语言程序设计语言的基础知识,还让学生掌握一些必要的算法,程序设计方法和编程技巧,引导学生开始使用计算机进行问题求解。在教学环节上,对学生的学习提出“掌握”和“了解”两个层次上要求,所谓“掌握”,是指学生在课后,必须能将所学内容自己理解并解决实际问题,这是将所学知识熟练应用到实践中的基础。所谓“了解”,是要求学生对所学内容有初步的认知,在遇到相关问题时要求能够辨识。教
3、学以课堂讲授为主,辅之以POWERPOINT方式。三、教学进度表序号题 目知 识 点学时1C语言概述C语言历史背景 特点 简单C程序介绍 上机步骤22算法算法概念 举例 特性 如何表示一个算法 结构化程序设计方法23数据类型 运算符与表达式 (一)C的数据类型 常量24数据类型 运算符与表达式 (二)变量 变量赋初值整型数据实型数据 字符型数据 25数据类型 运算符与表达式 (三)数值型数据间的混合运算算术运算符和算术表达式赋值运算 逗号运算26顺序程序设计 (一)C语句概述赋值语句字符数据的输入输出27顺序程序设计 ( 二)格式输入与输出程序举例28选择结构程序设计 (一)关系运算符和关系表
4、达式 逻辑运算符和逻辑表达式29选择结构程序设计 (二)if 语句switch语句 程序举例210循环控制(一)概述 goto 语句 while 语句211循环控制(二)do-while 语句for 语句212循环控制(三)循环嵌套break ,continue 语句213习 题程序举例214数组(一)一维数组215数组(二)二维数组216数组(三)字符数组217函数(一)概述 函数定义218函数(二)函数调用219函数(三)局部变量全局变量变量的存储类220习题程序举例221预处理命令(一)宏定义222预处理命令(二)文件包含条件编译223指针(一)地址和指针变量的指针和指向变量的指针变量2
5、24指针(二)数组的指针和指向数组的指针变量字符串的指针和指向字符串的指针变量225指针(三)函数指针和指向函数的指针变量返回指针值的函数指针数组和指向指针的指针226结构体与共用体(一)概述 定义结构体类型变量的方法结构体变量的引用结构体变量的初始化227结构体与共用体(二)指向结构体类型变量的指针变量用指针处理链表共用体228习题关于指针, 结构体与共用体的练习229位运算位运算符和位运算举例230文件(一)C文件概述文件类型指针231文件(二)文件的读写文件的定位232C+对C的扩充(一)C+的特点最简单的C+程序233C+对C的扩充(二)函数的重载变量的引用类型234复 习对学过内容的
6、总体复习2四、教学内容与讲授方法讲课顺序教学内容授课方法第一讲C语言历史背景 特点 简单C程序介绍 上机步骤讲述教学结合上机第二讲算法概念 举例 特性 用自然语言表示算法用流程图表示算法用N-S流程图表示算法用计算机语言表示算法 结构化程序设计方法引导讲述教学第三讲C的数据类型 常量 符号常量讲述教学第四讲变量 变量赋初值整型变量的表示方法整型变量 整型常量的类型实型变量的表示方法实型变量 实型常量的类型字符常量 字符变量 字符串常量引导讲述教学。第五讲数值型数据间的混合运算运算符简介算术运算符和算术表达式赋值运算符和赋值表达式 逗号运算符和逗号表达式讲述教学 结合上机第六讲C语句概述赋值语句
7、putchar() getchar()讲述教学结合上机 第七讲格式输入与输出(printf() scanf()程序举例讲述式第八讲关系运算符和关系表达式 逻辑运算符和逻辑表达式讲述教学。第九讲if 语句的三种形式 if 语句的嵌套条件运算符switch语句 程序举例讲述教学。第十讲概述 goto 语句 while 语句指向结构体变量的指针第十一讲do-while 语句for 语句讲述教学,举例第十二讲循环嵌套break ,continue 语句启发式教学,上机举例第十三讲程序举例讲述教学。第十四讲一维数组的定义一维数组的元素的引用一维数组的初始化程序举例讲述教学结合上机第十五讲二维数组的定义二
8、维数组的元素的引用二维数组的初始化程序举例讲述教学结合上机第十六讲字符数组的定义字符数组的引用字符数组的初始化字符串处理函数程序举例讲述教学。第十七讲概述 函数定义形式参数和实际参数函数的返回值讲述教学第十八讲函数调用的一般形式函数调用的方式函数的嵌套调用 数组作为函数参数讲述教学结合上机第十九讲局部变量全局变量变量的存储类讲述教学。第二十讲程序举例讲述教学。第二十一讲不带参数的宏定义带参数的宏定义讲述教学结合举例第二十二讲文件包含条件编译讲述教学第二十三讲地址和指针定义一个指针变量指针变量作为函数参数讲述教学第二十四讲指向数组元素的指针变量通过指针引用数组元素用数组名作为函数参数指向多维数组
9、的指针字符串表示形式字符串指针作为函数参数讲述教学结合上机第二十五讲用函数指针变量调用函数用指向函数的指针变量作为函数参数返回指针值的函数指针数组的概念指向指针的指针讲述教学结合上机第二十六讲概述 定义结构体类型变量的方法结构体变量的引用结构体变量的初始化定义结构体数组结构体数组的初始化应用举例讲述教学结合上机第二十七讲指向结构体变量的指针指向结构体数组的指针链表概述 简单链表共用体的概念 引用讲述教学结合上机第二十八讲关于指针, 结构体与共用体的练习上机举例第二十九讲位运算符和位运算举例讲述教学结合上机第三十讲C文件概述文件类型指针讲述教学第三十一讲文件的打开(fopen函数)文件的关闭(f
10、close函数)文件的读写文件的定位讲述教学结合上机第三十二讲C+的特点最简单的C+程序讲述教学第三十三讲函数的重载引用的概念引用的简单使用讲述教学第三十四讲对学过内容的总体复习复习五、课程的重点、思考题第一章 C语言概述本章学习重点:1、 C语言历史背景 2、 C语言特点 3、简单C程序, 上机步骤本章思考题:1. 总结出计算机编程的几个步骤,试着在Turbo C 2.0的条件下编辑和调试第一个C语言程序,在屏幕上打印出“This is my first programme”。2. 根据自己的理解,写出C语言的特点。3. 计算机的存储器中可以存储程序和数据,那么请大家体会一下存储器内是否可以
11、存储“地址”,如果可以,该如何理解内存中所存储的地址?第二章 算法本章学习重点:1、算法概念 举例 特性 用自然语言表示算法用流程图表示算法用N-S流程图表示算法用计算机语言表示算法 2、结构化程序设计方法本章思考题:1. 什么是算法?算法在程序设计中的重要作用是什么?2. 什么是结构化程序设计?其基本思想是什么?第三章 数据类型 运算符 表达式本章学习重点:1、 C语言的数据类型2、 变量、常量、运算符3、 表达式的使用; 第四章 顺序程序设计本章学习重点:1、 算法的概念与表示方法2、顺序结构应用举例3、 应用举例本章思考题:1、 设i=4,j=8, 求表达式:k=(i+)*(-j) 的值
12、。2、 由下面的输入语句: scanf(a=%db=%dc=%d”,&a,&b,&c);写出为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式。3、 分析程序并写出程序运行结果:请在纸面上分析一下程序的运行结果。main()int i=16,j,x=6;j=i+1;x*=i=j;printf(“%dn”,j);printf(“%dn”,x);4 编写程序:从键盘输入一位十进制数,把其转换为相应的数字字符。第五章 选择结构程序设计本章学习重点:1、 关系运算符、逻辑运算符;2、 条件语句、开关语句;3、 应用举例本章思考题:1 在下面的条件语句中,只有一个在功能上与其它三个语句
13、不等价(其中s1和s2表示它是C语句),这个不等价的语句是: 。A) if(a) s1; else s2;B) if(!a) s2; else s1;C) if(a!=0) s1; else s2;D) if(a= =0) s1; else s2;2 设有说明语句:int a=1,b=0;则执行以下语句后输出为: 。switch(a) case 1: switch(b) case 0: printf(“*0*”);break; case 1: printf(“*1*”);break; case 2: printf(“*2*”);break;A) *0* B) *0*2* C)*0*1*2* D
14、)有语法错误3 写下面程序运行结果时注意if与else的正确配对。main() int a=2,b=3,c=1; if(ab) if(ac)printf(“%dn”,a); else printf(“%dn”,b); printf(“over!n”); 第六章 循环控制本章学习重点:1、 循环结构的流程图表示2、 循环语句3、 单重循环问题应用举例;4、 嵌套循环及其应用举例本章思考题:1 华氏和摄氏温度的转换公式为:C=5/9*(F-32),其中C表示摄氏的温度,F表示华氏的温度。要求从华氏0度到华氏300度,每隔20度输出一个华氏温度对应的摄氏温度值。main() int upper,st
15、ep; float fahr=0,celsius; upper=300; srtep=20; while( s2) B) if(strcmp(s1,s2)C) if(strcmp(s2,s1)0) D) if(strcmp(s1,s2)0)7) 若用数组名作为函数调用时的实参,则实际上传递给形参的是: 。A) 数组的首地址;B) 数组的第一个元素值;C) 数组中全部元素的值;D)数组元素的个数。第八章 函数本章学习重点:1、 函数的定义、返回值2、 函数的调用与参数传递、函数原型的说明;3、 变量的作用域和存储类。4、 应用举例。本章思考题:1. 写出运行结果 main() int k=4,m
16、=1,p;p=func(k,m);printf(“%d”,p);p=func(k,m);printf(“%d”,p);func(int a,int b) static int m=0,i=2;i+=m+1;m=i+a+b;return(m);2 .用函数编程:求组合数:c(m,n)=m!/(n!(m-n)!)第九章 预处理命令本章学习重点:1、 不带参数的宏定义2、 带参数的宏定义3、 文件包含4、 条件编译本章思考题 定义一个带参数的宏,使两参数的值互换,并写出程序。第十章 指 针本章学习重点:1、 地址和指针2、 定义一个指针变量3、 指针变量作为函数参数指向数组元素的指针变量4、 通过指
17、针引用数组元素5、 用数组名作为函数参数6、 指向多维数组的指针7、 字符串表示形式8、 字符串指针作为函数参数本章思考题:1) 下面的函数用于计算两个整数之和,并通过形参传回结果。int add(int x,int y, z) =x+y; 2) 下面函数实现strlen函数的功能,即计算字符串s中的实际字符个数。int mystrlen(char *s ) char *p=s; while(*p!= ) p+; return ;3) 编程从键盘任意输入20个整数,统计非负数个数,并计算非负数之和。4) 任意从键盘输入10个整数,用函数编程实现将其中最大的数与最小的数的位置对换后,再输出调整后
18、的数组。5) 输入55的矩阵,编程实现:1) 分别求两条对角线上的各元素之和;2) 求两条对角线上行、列下标均为偶数的各元素之积;6) 打印如下形式的杨辉三角形 11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1 7) 编程将下列矩阵中的元素向右移动一列,最右一列移至第一列。1 4 6 8 10 12第十一章 结构体与共用体本章学习重点:1、 结构体类型的声明2、 结构体变量的定义、引用、初始化3、 指向结构体的指针的定义;4、 动态数据结构;5、 共用体;6、 应用举例。本章思考题:1 用位段的方式定义一个时间的位段,包含时、分、秒三个成员,计算每个成员所需要的位数
19、。2. 如果每个char由1个字节组成、每个int 由2个字节组成、每个float由4个字节组成、分别计算下列数据类型所占据的内存空间数。struct tempint value;float altogether;char non3;union temp1int value;float altogether;char non3;第十二章 位运算本章学习重点:1、 位运算符2、 位运算本章思考题 写一个函数,对一个16位的二进制数取出它的奇数位。第十三章 文件本章学习重点:1、 文件指针、打开和关闭2、 按字符读写文件3、 按数据块读写文件4、 按格式读写文件。本章思考题:1)编写程序完成一个文
20、件对另一个文件的复制,并将小写字母替换所有的大写字母。2)从键盘上读入10个整数,并输出到f2.dat的文件中。3)从上题中已经建立的文件中读入10个整数并显示出来。4)扫描文本文件temp中的“*”字符,并显示该字符在文件中出现的位置。5)编写程序建立一文本文件,并求出该文件的长度。6)在磁盘上存有30名学生(姓名,学号,年龄,性别)的数据文件stud.lst,要求读取文件中的第1,3,5.记录,一直到文件末尾并且输出。第十四章 C+对C的扩充本章学习重点:1、 C+的特点2、 最简单的C+程序3、 函数的重载4、 引用的概念5、 引用的简单使用本章思考题简述C+的特点。六实验设计实验1、C
21、语言上机环境的进入、设置及基本操作实验2、输入、输出函数的使用及简单程序的练习实验3、顺序、分支循环结构程序的设计实验4、利用函数进行较为复杂的程序设计实验5、数组应用、指针与数组的关系实验6、结构体、共用体的基本应用实验7、文件的使用七、本课程的几点说明:1. 关于C语言程序设计课程应该具备的基础学习C语言程序设计应先修完课程:高等数学。2. 本课程的教学计划本课程分C语言概述;算法;数据类型 运算符与表达式;顺序程序设计;选择结构程序设计;循环控制;数组;函数;预处理命令;指针;结构体与共用体;位运算;文件;C+对C的扩充等部分。3. 使用教材:谭浩强主编:C程序设计,清华大学出版社。4. 对学生的修课建议建议学生在学习该课程的过程中,要结合上机实验,使用计算机进行问题求解,进行程序编程,算法验证,掌握设计方法和编程技巧。八、学习参考书: 1、 谭浩强编著C程序设计题解与上机指导,清华大学出版社。2、 Herbert Schildt ANSI C标准详解 学苑出版社3、C语言程序设计教程 苏小红等编著 电子工业出版社 4、C语言大全 王子恢等译 电子工业出版社九、成绩考核办法1 平时出勤10分2 期末结业90分专心-专注-专业