C语言教学教案_第1页
C语言教学教案_第2页
C语言教学教案_第3页
C语言教学教案_第4页
C语言教学教案_第5页
已阅读5页,还剩135页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、PAGE140PAGE140重庆市农业学校理论课程教师教案本( 2013 2014 学年 第 二 学期) 专业名称 农村电气技术 课程名称 C语言程序设计 授课教师 甘 雨 学 校 重庆市农业学校 课题序号1 授课班级授课课时2h 授课形式理论授课章节名称11C语言的产生过程及特点12C语言程序的结构及书写格式使用教具教学目的1. 了解C语言的产生过程和发展特点初步认识C语言程序的结构了解C语言的一些相关知识教学重点C语言程序的结构2. C语言程序的特点教学难点C语言程序的结构特点2. C语言程序的书写格式更新、补充、删节内容课外作业P10 1-3教学后记授课主要内容或板书设计第一章 C语言概

2、述1.1 C语言的产生过程及特点一、C语言出现的历史背景二、C语言的特点C语言程序的结构及书写格式一、简单的C程序介绍二、C语言的一般形式课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)导入新课(二)新授(三)总结扩展:(四)作业布置:C语言是国际上广泛流行的、很有发展前途的计算机高级语言。以前的操作系统软件主要是用汇编语言编写的,然而,汇编语言依赖于计算机硬件,程序的可读性和可执行性都比较差。为了解决这一问题,产生了C语言。本学期我们就将共同来学习C语言的一些相关知识,本堂课先来了解一下C语言程序的发展及其结构特点。1.1C语言的产生过程及特点一 、C语言出现的历史背景

3、1. 语言是第三代语言即为面向过程的高级语言。第一代:机器语言;第二代:汇编语言;在C语言的基础上又发展出来了第四代语言:面向对象的程序设计语言,例如C+和VB等高级语言。2. C语言是在B语言基础上发展起来的。3. C语言适合作为系统描述语言,既用来写系统软件,也可用来写应用软件。例如可使用C语言编写UNIX系统。4. C语言的可读性、可移植性强二、C语言的特点C语言的特点(使用角度看)1. 表达能力强且灵活。1) 语法限制不严,程序设计自由度大。2) 运算符丰富。2. 程序结构清晰,适合模块化设计。3. 编写简单、易学。4. 目标程序质量高。程序执行效率高。5. 可移植性高。基本上不作修改

4、就能用于各种型号的计算机和操作系统。6. C语言是一种结构化程序设计语言。7. 具有丰富的数据类型。8. 具备变量指针和函数指针。指针是指和机器内存地址相关的说明项。1.2 C语言程序的结构及书写格式一:简单的C程序介绍例1: main( )printf(“This is a c program.n”); 这是一个最简单的C语言程序,最后的运行结果是在屏幕上显示:This is a c program.(光标落在下一行)。例2: main( ) /*主函数*/ int a, b, c; /*定义变量*/scanf(“%d, %d”, &a , &b); /*输入变量a和b的值 */c=max(

5、a,b); /*调用max函数,将得到的值赋给c*/printf(“max=%d”,c); /*输出c的值*/int max(x,y) /*定义max函数,函数值为整形,x,y为形式参数*/int x,y; /*对形参x,y做类型定义*/ int z; /*函数中用到的变量z,也要加以定义*/if (xy) z=x;else z=y;return(z);/*将z的值返回,通过max带回调用处*/ 本例题是一个比较典型的C语言程序,运行情况是:8,5(输入8和5给a和b) max=8(输入c的值)说明:1. C程序是由函数构成的。1) 一个C程序至少包含一个函数(main函数)。2) 函数定义是

6、C程序的基本单位。3) 输入输出函数使用系统提供的库函数printf和scanf。2. 一个函数由两部分组成。1) 函数的说明部分。例: int max (x,y) 函数类型 函数名 函数参数 int x,y; 形参类型 形参 一个函数名后面必须跟一对圆括弧,函数参数可以没有如main()。2) 函数体。,一个函数至少有一对大括号。3. 一个程序总是从main函数开始执行的,位置随意。4. 书写格式自由,但每个语句后必须有一个 “;”。5. main、int为关键字,使用小写字母,C语言区分大小写。6. 使用“/*”和“*/”对语句进行注释。二:C语言的一般形式变量定义main() 变量定义

7、程序段userf1() 变量定义 程序段userfn() 变量定义 程序段其中userf1()userfn()是用户定义的函数。本堂课主要学习了以下几方面内容: C语言出现的历史背景; C语言的特点; C语言程序的结构及书写格式;通过这些内容的学习,要求我们在深入学习之前对C语言有一个整体的认识。P10 13。课题序号2授课班级10大专授课课时2h 授课形式理论授课章节名称3C语言程序的开发过程1.4C语言上机操作使用教具教学目的TURBOC系统C语言的上机步骤掌握TC的使用教学重点C语言的上机环境2. C语言的上机步骤教学难点C语言程序的编译过程更新、补充、删节内容课外作业教学后记授课主要内

8、容或板书设计1.3C语言程序的开发过程1.4C语言上机操作课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)导入新课(二)新授三、总体扩展(四)作业布置:我们已经对C语言的知识有了初步的了解,这节课我们来具体的体会一下C语言的开发过程和上机过程。1.3C语言程序的开发过程Step1、编辑源程序生成以.c为扩展名的源文件。Step2、编译源文件 编译程序要对源程序进行语法检查,若没有错误生成目标文件,编译时如果发现错误,则显示错误信息,并要求重新编译,直到编译正确为止。目标文件的扩展名为.obj。Step3连接目标文件及库文件连接目标文件生成可执行文件,可执行文件以.exe为

9、文件扩展名。Step4运行程序1.4C语言的上机操作过程一:C语言上机环境1. UNIX系统。(略)2. DOS下使用MSC4.0编辑C程序。(了解)3. 使用TurborC运行C程序。二: Turbo C 2.0集成开发环境的使用 进入Turbo C 2.0集成开发环境中后, 屏幕上显示: 其中顶上一行为Turbo C 2.0 主菜单, 中间窗口为编辑区, 接下来是信息窗口, 最底下一行为参考行。这四个窗口构成了Turbo C 2.0的主屏幕, 以后的编程、编译、调试以及运行都将在这个主屏幕中进行。下面详细介绍主菜单的内容。 主菜单:在Turbo C 2.0主屏幕顶上一行, 显示下列内容:F

10、ile Edit Run Compile Project Options Debug Break/watch除Edit外, 其它各项均有子菜单, 只要用Alt加上某项中第一个字母(即大写字母), 就可进入该项的子菜单中。 1.启动TurborC l 启动DOS系统;l C: cdtc;l C: tctc2. 退出TurborC 可采用两种方法:1)Alt+X 2)按F10再将光标移到FILE菜单下的QUIT,按回车键。3. 编辑源程序FILE菜单下的菜单项: LOAD:装入磁盘上已经存在的文件,可直接进行编译、连接、运行,也可进行修改。NEW建立新文件。SAVE:保存文件。WRITE TO:将

11、当前文件写到另一文件。4. 编译源文件COMPILE菜单下的菜单项:COMPILE TO EXE:编译生成目标文件,目标文件名为“文件名.obj”。MAKE EXE FILE:生成可执行文件。直接生成可执行文件“文件名.exe”l LINK EXE FILE:连接目标文件生成可执行文件。对已经生成的.obj目标 文件进行连接,生成.exe文件。 5. 运行程序:C:tc文件名l Run (运行)菜单按Alt+R可进入Run菜单, 该菜单有以下各项: .Run (运行程序):运行程序其热键为Ctrl+F9。 .User screen (用户屏幕) 显示程序运行时在屏幕上显示的结果。其热键为Alt

12、+F5。本节课主要学习了C语言的上机步骤: 1.启动TC。 2.在编辑窗口中输入程序。 3.将程序命名并保存。 4.编译源程序,生成目标文件。 5.对程序进行连接,生成可执行文件。 6.运行程序。 编写一小程序在屏幕上显示“hello”。课题序号3授课班级10大专授课课时2h 授课形式理论授课章节名称1.4C语言上机操作使用教具教学目的TURBOC系统2. C语言的上机步骤教学重点C语言的上机环境2. C语言的上机步骤教学难点C语言程序的编译过程更新、补充、删节内容课外作业教学后记授课主要内容或板书设计一:C语言上机环境二: TurborC的使用二: TurborC的启动三TurborC系统的

13、退出 四:编辑源程序五:编译源文件六:运行程序七:验证下面两个函数。课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)导入新课(二)新授(三)总结扩展:通过前两堂课的学习,我们已经对C语言的知识有了初步的了解,本节课我们将对TURBOC进行使用。一、C语言上机环境1.UNIX系统。(略)2. DOS下使用MSC4.0编辑C程序。(了解)1)编辑C源程序。2)编译。3)连接。4)执行程序。3. 使用TurborC运行C程序。二: TurborC的启动1在DOS下进入l 开始程序MS-DOS方式l C:WINDOWS_C:WINDOWSCDTURBOC2l C: TURBOC2

14、_C: TURBOC2TC2直接进入 打开我的电脑C盘TURBOC2文件夹双击TC图标三: TurborC系统的退出 1按F10再将光标移到FILE菜单下的QUIT,按回车键。2Alt+X四:编辑源程序1F10FILENEW(新建文件)2编辑程序五:编译源文件F10COMPILEMAKE EXE FILE(生成可执行文件)。 六:运行程序1在DOS下运行2直接运行 F10RUNRUNl F10RUNUSER SCREEN七:验证下面两个函数。例1: main( )printf(“This is a c program.n”);例2: main( ) / int a, b, c; scanf(“

15、%d, %d”, &a , &b); c=max(a,b); printf(“max=%d”,c); int max(x,y) int x,y; int z; if (xy) z=x;else z=y;return(z); 课题序号4授课班级10大专授课课时2h 授课形式理论授课章节名称2.1常量和变量2.2C语言的数据类型使用教具教学目的掌握C语言中常量和变量的使用方法2. 掌握C语言的几种数据类型教学重点1. 常量和变量 2. 三种数据类型教学难点1. 常量的定义2. 浮点型变量的定义更新、补充、删节内容课外作业教学后记授课主要内容或板书设计2.1常量和变量一:常量和符号常量二:变量2C语

16、言的基本数据类型 一:整型数据二:浮点型数据三:字符型数据课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)前堂回顾(二)导入新课(三)新授(四)总结扩展:(五)作业布置:C语言的开发过程:1. 编辑源程序。2. 编译源文件。3. 连接目标文件及库文件。4.运行程序。一个程序应包括数据描述和操作步骤两方面的内容。数据是操作的基本对象,所以我们可以这样认为程序=数据结构+算法。数据结构就是包括数据类型在内的一些相关知识,这节课我们就来具体学习C语言中的几种常量和变量以及数据类型。第二章 基本数据类型与顺序程序设计2.1常量和变量一:常量和符号常量 例1:求半径为5的圆面积。

17、#include “stdio.h” #define PI 3.1415926 /*定义常量圆周率的值为3.1415926*/ main() float r,area;r=5;area=PI*r*r;printf(“area=%f”,area);1. 用一个标识符代表一个常量的,称为符号常量。PI即为符号常量。2. 用#define定义符号常量,一般形式为:#define 标识符 字符串。这个标识符又称为宏。在上例中,程序运行中遇到PI,要将宏名替换成字符串,称为宏展开。例:area=PI*r*r展开为 area=3.1415926*r*r。3. 使用符号常量可以简化程序的数据输入且不易出错。

18、4. 符号常量名只能由字母、数字和下划线组成,且第一个字母必须是字母或下划线。例2:#define PRICE 30 main() int num,total;num=10;total=num*PRICE;printf(“total=%d”,total);和例1相同,这里使用#define定义常量30,名为PRICE。这里有几点说明:1)常量名一般采用大写字母。2)符号常量名前后要一致。二:变量1. 变量:在程序运行过程中,值可以改变的量称为变量。每个变量都有一个名字,称为变量名。2. 说明:1)int k=50;int是类型标识符,k是变量名,50是变量k的初值。 2)变量名只能由字母、数字

19、和下划线组成,且第一个字母必须是字母或下划线。3)变量是内存中的某一个空间,上例中内存空间命名为k,50是k中存放的值。 4)变量名一般用小写字母。2.2C语言的基本数据类型 一:整型数据1. 整型常量:#define R 32 /*定义整型常量*/。1) 十进制整型常量。如123、-321、02) 2) 八进制整型常量。以0开头的数是八进制数。如0123表示八进制的123。3) 十六进制整型常量。以0 x开头的数是16进制数。如0 x123代表16进制的123。2. 整型变量:int i,j; /*定义整型变量*/。3. 标识符1)基本型:用int表示,范围是-3276832767。2)短整

20、型:用short表示。3)长整型:用long表示。4)无符号型:分别用unsigned int(065535)、unsigned short和unsigned long表示,只存放数不存放符号。二:浮点型数据1. 浮点数即为数学中的实数。有以下两种表示形式:1)十进制数形式。由数字和小数点组成,并且必须有小数点。例:5 整型数据;5.0 实型数据。2)科学表示法(指数形式)。例:1.23e3或1.23E3都可表示1.23*103。2. 浮点型常量:例:123.05、5.6e23. 浮点型变量1)单精度(float)l 占四个字节,32位。l 有效数位是7位。例:111111.111有效位为11

21、1111.1。l 定义方式;float x,y;2)双精度(double)l 占8个字节。l 15个有效数字位。l 定义方式:double z;三:字符型数据1. ASCAII码:美国标准信息交换码。1) 用七位二进制编码组成,ASCII码共128个。2) 传送数据时使用8位二进制编码,最高位为奇偶校验位。2. 字符常量1) a与A是不同的字符常量, 是定届符。2) 用“a”表示字符常量是错误的。3) 小写字母的ASCII码比对应的大写字母ASCII码大32。4) 一个字节存放一个字符。5) 特殊的字符常量:n 换行符;t 表格符;b 退格符;r 回车 反斜杠 单引号3. 字符变量1) 定义形

22、式:char c1,c2;2) 赋值:c1=a 字符使用单引号。例:将小写字母a转换成大写字母A。#include “stdio.h”main() char c1,c2;int i,j;c1=a;c2=c1-32; /*c2=A*/printf(“%c,%c”,c1,c2);运行结果:a,A本堂课主要学习了以下两方面内容: 常量和变量的定义形式; 在C语言中,诸如2.,0.,.5,0.0都是合法的实数形式(都有小数点)。 C语言的几种基本数据类型:char、int、long、float、double;在字符变量进行赋值时,要使用定界符。例x=a;而字符串要用“”作为定届符。即 “abcd”是正

23、确的但 “a”是错误的。课题序号5授课班级10大专授课课时2h 授课形式理论授课章节名称上机:常量和变量以及数据类型的使用使用教具教学目的常量和变量的使用2. 数据类型的使用教学重点1. 符号常量的使用2. 变量的使用教学难点符号常量的定义更新、补充、删节内容课外作业教学后记授课主要内容或板书设计一:C语言的上机步骤二:常量和变量的使用三:数据类型的使用课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)导入新课(二)教学内容(三)总结扩展:(四)作业布置:我们已经学习了C语言的上机过程,这节课我们将在TC上演示几个程序。一、C语言的上机步骤 启动TC。 在编辑窗口中输入程序

24、。 将程序命名并保存。 编译源程序,生成目标文件。 对程序进行连接,生成可执行文件。 运行程序。二、常量和变量的使用验证程序例2-1例:求半径为5的圆面积。 #include “stdio.h” #define PI 3.1415926/*定义常量圆周率的值为3.1415926*/ main() float r,area;r=5;area=PI*r*r;printf(“area=%f”,area);1)注意符号常量大小写字母在程序前后要一致。2)浮点型数据在最后输出时的显示形式。2. 变量的初始化及其赋值过程1)变量的初始化过程。例:main() int a=b=0;printf(“%d,%d

25、n”,a,b); 在此程序的编译过程中,我们会发现系统会提示给我们具有变量b没有被定义的错误。在C语言中变量初始化时不可以进行连等的操作,因为系统无法识别第一个等号的变量,而不能成功的进行赋值。2)变量的赋值过程。例:main() int a,b;a=b=0;printf(“%d,%dn”,a,b);此程序为正确的程序,在编译及其运行过程中都不会出现问题,根据赋值语句具有的右结合性,可以知道最后两个变量的初值都为0。3. 特殊字符常量的使用 n的使用 main() clrscr();/*/printf(“123n456”);输出结果:123 456 t的使用main() clrscr();/*

26、/printf(“123t456”);输出结果:123 456 b的使用main() clrscr();/*/printf(“123b456”);输出结果:12456 r的使用main() clrscr();/*/printf(“123r456”);输出结果:456三:数据类型的使用1) 整型数据(P19 例2-6)2)浮点型数据例:main() float x; double x;x=111111.111;printf(“%fn”,x); 注:浮点型数据的有效位问题直接影响到最终结果。3) 字符型数据 验证例2-2 ASCII码的理解例:main() char c1,c2;c1=1;c2=1

27、;printf(“%c,%c”,c1,c2);本节课主要回顾了常量和变量的使用以及数据类型的使用。同时要求同学们掌握C语言程序在TC下的两种运行方式。将大写字母A转换成小写字母a。课题序号6授课班级10大专授课课时2h 授课形式理论授课章节名称2.3运算符和表达式2.4赋值语句使用教具教学目的掌握几种常用的运算符用C语言格式写出正确的表达式3. 掌握赋值符号的使用教学重点1. 常用运算符2. 赋值语句教学难点1. 自增和自减运算符的使用2. 赋值语句中的类型转换更新、补充、删节内容课外作业教学后记授课主要内容或板书设计23运算符和表达式一:相关概念二:运算符 三:算术表达式2.4赋值语句一:相

28、关概念二:赋值语句的格式与功能三:类型转换课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)前堂回顾(二)导入新课(三)新授(三)总结扩展:(四)作业布置:1. C语言的几种基本数据类型:char、int、long、float、double;2. 变量的定义方式:例: int x,y;3. 编程:将小写字母b转换成大写字母B。C语言程序由一行一行的语句代码组成,每个语句由变量、运算符、表达式、函数调用和控制语句构成。上堂课我们已经学习了变量的使用,这节课我们来继续学习运算符和表达式。2.3运算符和表达式一:相关概念1. 运算符:进行运算的符号。2. 表达式:由运算对象(包括

29、常量、函数、变量和运算符)连接起来的有意义的式子。二:运算符 1. 算术运算符 运算符运算优先级例子( ) 圆括号15/(1-3)=-2*乘法37*3=21 /除法37/3.0=2.333333,7/3=2 %模除37%3=1 +加法47+3=10-减法47-3=4说明:1)模除运算是两个整数相除后取余数;要求%两边必须是整型数据。2)若算术运算符两边均为整数,则结果为整数。3)若参加运算的两个数中有一个数为实数,则结果为double型。4)按照优先级运算。先括号,然后再先乘除后加减。2. 自增自减运算符1)自增l i+ 先使用i的值,在执行语句i=i+1;例:i=3;j=i+;printf(

30、“%d,%d”,i,j);l +i 先执行语句i=i+1,在使用i的值。例:i=3;j= + i;printf(“%d,%d”,i,j);例:main()int i,j,m,n;i=8; j=10;m=+i; n=j+;printf(“%d,%d,%d,%d”,i,j,m,n);运行结果为9,11,9,102)自减l i 先使用i的值,在执行语句i=i1;l i 先执行语句i=i1,在使用i的值。 3. 赋值运算符1) ”=” 用来将一个数据赋给一个变量。2) “= =”表示等于号。3) “=”左边只能是变量,而不能是常量和表达式。例:a=3 /*一次赋值操作或称赋值运算*/4. 逗号运算符1

31、)优先级最低为15。2)格式:表达式1,表达式23)表达式值为最后一个表达式的值。例:x=(a=2,b=3,c=4);相当于执行:a=2;b=3;c=4;x=4;x的值为最后一个表达式中c的值。三:算术表达式1. 根据运算符的优先级进行运算。2. 书写格式:例:3*5-82.4赋值语句一、相关概念1. 赋值:就是将一个数据存入一个连续的具有若干存储单元的存储空间中,该存储单元有一个名字,就是前面提到的变量名。例:x=5;2. 赋值语句:对一个变量进行赋值的语句。 例:int x; x=5; 二、赋值语句的格式与功能1. 格式2)变量=表达式;例:x=5;y=8*2-5;3)语句结束后必加分号。

32、2. 功能:首先计算后面的值,然后赋给左边的变量。三:类型转换1. 类型转换:当赋值语句中“=”左右两边的变量与表达式的数据类型不一致时,C编译系统会自动实现数据类型的转换。2. 转换原则:将赋值号右边的表达式值的类型转换成左边变量相同的类型。例1: int a;long b;char c;a=b; /*long型变量b的值转换成int型后再赋给a*/b=a; /*int型变量a的值转换成long型后再赋给b*/b=a+c; /*int型a+c的值转换成long型后再赋给b*/ 注意:1. 左边变量的数据类型比右边表达式值的类型长,转换后精度不变。左边变量的数据类型比右边表达式值的类型短时,会

33、对右边的数据进行截取。下面看一下使用赋值语句编写的简单程序例2:求直径为8的圆周长。#define PI 3.1415926main() int d=8;float r,l;r=d/2;l=2*PI*r;printf(“r=%f,l=%fn”,r,l);本节课主要介绍了:l 运算符和表达式l 赋值语句例2中直径为定值,那么求任意的圆周长该如何求呢#define PI 3.1415926main()int d;float r,l;r=d/2;l=2*PI*r;scanf(“%d”,&d); /*输入一个整型数据*/printf(“r=%f,l=%fn”,r,l);P301(1)(2)(3)(4)

34、课题序号7授课班级10大专授课课时2h 授课形式理论授课章节名称上机实践使用教具教学目的自增运算符的使用赋值运算符的使用3. 复合赋值运算符的使用教学重点1增运算符的使用2复合赋值运算符的使用教学难点复合赋值运算符的使用更新、补充、删节内容课外作业教学后记授课主要内容或板书设计一:验证程序二:看程序写结果课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)前堂回顾(二)导入新课(三)新授(三)总结扩展:(四)作业布置:定位光标:F10、ALT+相应菜单的首字母。快捷键的使用:退出TURBOC:Alt+x 运行:ctrl+F9看结果:Alt+F5在DOS下几个常用的命令:清屏:

35、cls 退出:exit路径的形成:区分根目录和子目录Turboc2。在上堂课的基础上,本堂课将具体验证一些运算符的使用,同时掌握赋值语句的使用时机,使用技巧。一:验证程序例2-4。体会+i和i+的区别。 #include “stdio.h” main( ) int i,j,k;k=30;i=k+;printf(“i=%d,k=%d”,i,k);j=+k;printf(“nj=%d,k=%d”,j,k);2例2-5。#include “stdio.h”#include “math.h” main( ) float k,x,y;x=(k=9.8)+7;printf(“nk=%5.1f,x=%5.1

36、fn”,k,x);y=k=9.8+7;printf(“nk=%5.1f,y=%5.1fn”,k,y); 运行结果:k= 9.8,x= 16.8 k= 16.8,y= 16.8通过本程序的验证,将使我们更加清楚优先级的问题,在本程序中使用了算术运算符才赋值运算符,由于“+”比“=”的优先级高,所以导致了最终结果的不同。在C语言中的几种合法形式:l int a,b,c; a=b=c=0; int a=0,b,c;l int a; a=0;l int a=0; int b,c; b=2; c=6;在C语言中的几种不合法形式:l int a=b=0; int a; a=0;int b,c; b=2;c

37、=6;二:看程序写结果程序1:自增运算符的使用。main() int i;printf(“%d,%d”,i,i+);运行结果:2,1程序2:逗号运算符的使用。main() int a;printf(“%dn”,(a=3*5,a*4,a+5);运行结果:20程序3:复合赋值运算符的使用。main() int a=12,a1,a2,a3;a1=a+=a;a=12; a2=a/=a+a;a=12; a3=a+=a-=a*=a;printf(“%d,%d,%d”,a1,a2,a3); 运行结果:24,0,0通过本节课的练习,同学们应该对C语言的具体开发过程中出现的问题有了更深层次的了解,有时候在理论讲

38、解时没有问题,而在具体上机的过程中会出现很多意外情况,需要我们认真的考虑并在实践中掌握经验。P301(1)(2)(3)(4)课题序号8授课班级10大专授课课时2h 授课形式理论授课章节名称2.5数据的输入2.6数据的输出使用教具教学目的输入函数的使用2. 输出函数的使用教学重点格式化输入函数scanf()2. 格式化输出函数printf()教学难点格式化输入函数scanf()2. 格式化输出函数printf()更新、补充、删节内容课外作业教学后记授课主要内容或板书设计25数据的输入一:相关知识二:字符输入函数getchar() 三:格式化输入函数scanf()2.6数据的输出 一:字符输出函数

39、putchar() 二:格式化输出函数printf()课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)前堂回顾(二)导入新课(三)新授(三)总结扩展:(四)作业布置:1. 自增运算符:+l i+ :先使用i的值,再进行i=i+1;的运算.l + i:先进行i=i+1;的运算,再使用i的值.例:main() int i,j,m,n;i=j=1;m=i+;n=+j;printf(“%d,%d,%d,%d”,i,j,m,n);运行结果:2,2,1,22. 复合赋值运算符:例main() inta=12,a1,a2,a3;a1=a+=a;a=12;a2=a/=a+a;a=12;a

40、3=a+=a-=a*=a;printf(“%d,%d,%d”,a1,a2,a3); 运行结果:24,0,0在上堂课中我们已经掌握了如何求一个定值半径的圆面积及周长,但在真正编程过程中我们往往需要求一个任意半径的圆面积及周长,那么我们该如何解决这类问题呢,这就要求有一个特定的输入语句输入我们所需要的值,一般来说,一个完整的计算机程序常常要具备输入和输出功能,然而,C语言本身不提供输入输出语句,输入输出是由函数实现的,这节课我们就来主要学习一下C语言标准函数库中的一些输入和输出函数。25数据的输入一:相关知识#include:预编译命令。 stdio.h:包含标准输入输出函数的文件。#includ

41、e “stdio.h” 1)使用标准I/O库中的函数时,在程序首使用;2)printf和scanf函数可不用。转换说明符1)d格式符:用来表示十进制整数。 %d 按整型数据的实际长度输出。%ld 长整型%u 无符号型%md m为指定的输出字段的宽度,如果数据位数小于m,则左端补以空格,若大于m,则按实际位输出。 例:若a=123,b=12345对于语句printf(“%4d,%4d”,a,b); 输出结果为: 123,123452)x格式符(%x):用来表示十六进制整数。3)f格式符:用来表示浮点小数。 %f 不指定字段宽度,由系统自动指定,整数部分全部输出,并输出6位小数.(但并不是每位数字

42、都是有效的.)例:main() float x,y;x=111111.111;y=222222.222;printf(“%f”,x+y); 运行结果是:333333.328125,其中前7位是有效数字,所以并不是所有打印出来的结果都是正确的 %m.nf 指定输出的数据共占m列,其中有n位小数.如果长度小于m则左补空格.例:main() float f=123.456;printf(“%f,%10.2f”,f,f);输出结果是:123.455994, 123.46.4)c格式符(%c):用来表示单一字符。5)s格式符(%s):用来表示字符串。二:字符输入函数getchar() 函数形式:getc

43、har();使用方式:例:char c; c=getchar();功能:在键盘读入一个字节的字符代码值;在键盘上键入ctrl+z(文件尾标),表示输入过程结束。例:#include “stdio.h”main() char ch; ch=getchar(); /*从键盘上读取一个字符*/ printf(“ch=%c”,ch);getchar()函数只能输入一个字符,要想输入其他类型的数据,就需要使用格式化输入函数scanf().三:格式化输入函数scanf()使用格式: scanf(“输入格式”,输入项系列);应用举例: scanf(“%d%d”,&a,&b);说明:输入格式中内容为格式控制符

44、,如%d:输入项系列即为地址列表,指的是变量的地址.如&a与&b是变量a和b存放的地址,&为取地址符号.当执行到scanf()时,要输入信息,各项信息之间要用空格、tab或回车键作为分隔符.逗号和分号等标点符号不能作为分隔符.输入数据时不能规定精度.如出现scanf(“%7.2f”,&f)这是不正确的.26数据的输出 一:字符输出函数putchar() 函数形式:putchar();使用方式:例:char c; putchar(c);3. 功能:把一个字节的代码值所代表的字符输出到显示器上。例:#include “stdio.h”main() char c; c=getchar(); /*从键

45、盘上读取一个字符*/ putchar(c); /*在显示器上显示一个字符*/ putchar()函数只能输出一个字符,要想输出其他类型的数据,就需要使用格式化输出函数printf().二:格式化输出函数printf()使用格式: printf (“输出格式”,输入项系列);应用举例: printf (“%d,%d”, a,b);说明:1) 输出格式中内容为格式说明符,如%d,%f;输入项系列即为输出列表,指的是需要输出的一些数据,可以是表达式也可以是变量名,例如a和b.main() int a,b,c;scanf(“%d%d%d”,&a,&b,&c);printf(“%d,%d,%dn”,a,

46、b,c);运行时输入a、b、c的值: 3 4 5(输入a、b、c的值) 3,4,5(输出a、b、c的值)本节课主要讲了C语言中的几种输入输出函数:l 字符输入函数getchar()l 格式化输入函数scanf()l 字符输出函数putchar()l 格式化输出函数printf()课题序号9授课班级10大专授课课时2h 授课形式理论授课章节名称上机实践使用教具教学目的输入函数的使用2. 输出函数的使用教学重点1. 格式化输入函数scanf()2. 格式化输出函数printf()教学难点1. 格式化输入函数scanf()2. 格式化输出函数printf()更新、补充、删节内容课外作业教学后记授课主

47、要内容或板书设计一:使用输入函数时输入数据的形式二:程序验证三:字符型数据和整型数据的区分四:编程(P31-2)课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)前堂回顾(二)导入新课(三)新授(三)总结扩展:(四)作业布置:例:2-3:将大写字母A转换成小写的字母a。#include “stdio.h”main() char c1,c2;c1= A;c2=c1-32;printf(“%c,%c”,c1,c2);本节课中我们将使用字符输入输出函数及格式化输入输出函数具体的编写程序,来具体体会一个使用输入输出函数给程序带来了什么影响。一:使用输入函数时输入数据的形式例1:ma

48、in() int a,b,c; scanf(%d%d%d,&a,&b,&c); printf(%d,%d,%d,a,b,c);例2:main() char c1,c2; scanf(%c%c,&c1,&c2); printf(%c,%c,c1,c2); 二:程序验证字符输入函数的使用(例2-8)#include “stdio.h”main() char ch;ch=getchar();printf(“ch=%c,ch=%dn”,ch,ch);格式化输入函数的使用(例2-9)#define PI 3.1415926main()int d;float s,l,r;printf(please inp

49、ut a zhijing :”);scanf(“%d”,&d);r=d/2.0;s=PI*r*r;l=2*PI*r;printf(“r=%f,s=%f,l=%f”,r,s,l);3.P31-1.注意注意格式化输入函数输入数据时的形式。三:字符型数据和整型数据的区分例: main() char c1,c2;c1=5;c2=5;printf(“%c,%c”,c1,c2); 通过本程序的验证,要求学生真正的掌握整型数据和字符型数据的区分,以及相互转换的时机。四:编程将大写字母A转换成小写字母a。2. (P31-2) #include “stdio.h” main() char c1,c2;c1=ge

50、tchar();c2=c1+32;putchar(c2);本节课主要使用了C语言中的几种输入输出函数:l 字符输入函数getchar()l 格式化输入函数scanf()l 字符输出函数putchar()l 格式化输出函数printf()对于格式化输入函数scanf()在使用时我们应该注意以下几个问题:l 格式控制后面应该是变量的地址,而不是变量名. 如出现scanf(“%d,%d”,a,b)是错误的.l 如在格式说明以外还有其他字符,则输入数据时应输入与这些字符相对应的字符.如出现:scanf(“%d,%d”,&a,&b),则输入3,4.l 在用“%c”格式输入字符时空格字符和 “转义字符”都

51、作为有效字符输入. 如出现scanf(“%c%c”,&c1,&c2);若输入a b则c1为a,而c2为空格.P312课题序号10授课班级10大专授课课时2h 授课形式理论授课章节名称2.7常用的数学函数2.8顺序结构程序使用教具教学目的几种常用的数学函数2. C语言程序的三种基本结构教学重点1. 几种常用的数学函数2. 顺序程序结构教学难点1. 顺序程序结构的特点2. 顺序程序结构的使用更新、补充、删节内容课外作业教学后记授课主要内容或板书设计27常用的数学函数 一:常用函数二:函数使用说明28顺序结构程序 一:五种C语句二:三种基本结构课 堂 教 学 安 排教学过程主 要 教 学 内 容 及

52、 步 骤(一)前堂回顾(二)导入新课(三)新授(四)总结扩展:(五)作业布置:#include:预编译命令。.h为C语言库函数的扩展名。3. 标准I/O库函数:字符输入函数getchar()格式化输入函数scanf()字符输出函数putchar()格式化输出函数printf()C语言中除了几种常用的输入输出函数以外,还提供了许多具有不同功能的基本函数。同时,C语言是一门结构化程序设计语言,有三种基本程序结构.本节课就来主要学习一下几种常用的函数和顺序程序结构.37常用的数学函数 一:常用函数 sqrt(x) 求x的开平方,x0 pow(x,y) 求xy exp(x) 求ex abs(x) 求x

53、的绝对值,n为int型整数 fabs(x) 求x的绝对值,n为double型浮点小数log(x) 求x的对数,以e为底,x0 log10(x) 求x的对数,以10为底,x0 sin(x) 求x的正弦,x的单位为弧度 cos(x) 求x的余弦,x的单位为弧度tan(x) 求x的正切,x的单位为弧度rand() 产生032767范围内的整数随机数 二:函数使用说明 使用数学函数之前,要先在程序开头包含头文件math.h即:#include “math.h”.上述函数的参数类型和函数值类型均为实数.应用举例:例:输入一个正数x,求的x开平方. #include “stdio.h”#include “

54、math.h”main() float x,y;printf(“input x:”);scanf(“%f”,&x);y=sqrt(x);printf(“sqrt(%7.2f)=%7.2fn”,x,y); 运行程序的结果是:input x:81sqrt( 81.00)=9.0038顺序结构程序 一:五种C语句1. 控制语句,完成一定的控制功能. if ( )else (条件语句) for( ) (循环语句) while( ) (循环语句) do while( ) (循环语句) continue (结束本次循环语句) break (中止执行switch或循环语句) switch (多分支选择语句)

55、 goto (转向语句) return (从函数返回语句)2。函数调用语句.由一个函数调用加一个分号构成一个语句.例: printf(“Very good!”);表达式语句.由一个表达式构成的一个语句.例: a=3; i=i+1;空语句.例: ;可以用把一些语句括起来成为一个复合语句.例: z=x+y;t=z/100;printf(“%f”,t);二:三种基本结构顺序结构:先执行A操作,再执行B操作.即按照先后顺序依次执行.如图1.选择结构:P代表一个条件,当条件成立时,执行A,否则执行B.如图2.3. 循环结构:1) 当型循环;P代表一个条件,当条件成立时,反复执行A,直到P为假时停止循环.

56、如图3.2) 直到型循环;P代表一个条件, 先执行A操作,再判断条件是否为假,若为假执行A, 如此反复直到P为真时停止循环.本节课主要学习了几种常用的数学函数和C语言的几种程序结构形式. 五种C语句控制语句 函数调用语句 表达式语句 空语句 复合语句三种基本结构 顺序结构 选择结构 循环结构课题序号11授课班级10大专授课课时2h 授课形式上机授课章节名称上机实践使用教具教学目的复习TC的上机过程常用的几个数学函数3. 验证几个顺序结构程序教学重点sqrt()函数和pow()函数的区别随机函数的使用3. 顺序结构的编程思想教学难点1. 顺序结构的编程思想2. 数学表达式的C语言书写格式更新、补

57、充、删节内容课外作业教学后记授课主要内容或板书设计一:验证程序二:顺序结构程序课 堂 教 学 安 排教学过程主 要 教 学 内 容 及 步 骤(一)导入新课(二)新授(三)总结扩展:(四)作业布置:在上堂课中我们简单介绍了几种常用的数学函数以及C语言程序的三种结构形式.这节课我们就来具体的验证一下几种数学函数的使用,同时体会一下顺序结构程序的编程思想一:验证下面几个程序例1:例:输入一个正数x,求的x开平方. #include “stdio.h”#include “math.h”main()float x,y;printf(“inputx:”);scanf(“%f”,&x);y=sqrt(x)

58、;printf(“sqrt(%7.2f)=%7.2fn”,x,y); 运行程序的结果是:input x:81sqrt( 81.00)=9.00 例2:使用pow(x,y)求开平方. #include “stdio.h”#include “math.h”main()double k,j; int i; k=25; j=1.0/2;printf(“%f,%f,%f”,pow(k,j),sqrt(k);pow(k,1/3.0);运行程序的结果是: 5.000000,5.000000,2.924018 从该程序中我们可以注意到j=1.0/2绝不可以写成,因为j=1.0/2结果为实数,而j=1/2结果为

59、0.此外我们观察运行结果可以发现小数点后要有六位小数.二:随机函数的使用rand()例1: #include math.hmain() int i,j; for(i=1;i=20;i+) j=rand();printf(%dt,j);运行结果:346 130 10982 1090 11656 7117 17595 6415 22948 31126 9004 14558 3571 22879 18492 1360 5412 26721 22463 25047在本实例中我们使用了随机函数rand()用来产生20个随机整数,其中用到了for循环语句,在第四章时我们会做具体的讲解。在这个程序中我们发现

60、20个随机数不仅值是随机产生的,连同位数也是随机的。但在具体使用时我们只需要产生特定范围的随机数,如例2。例2: #include math.hmain() int i,j; for(j=0;j=0&rand=9) i=rand(); else i=rand(); i=rand()%10; printf(%dt,i); 运行结果:2 7 8 8 2 1 9 5 2 6 5 0 1 8 2 4 7 2 7 9 根据例1和例2的编程思想,要求学完第三章和第四章的内容后使用随机函数编写一个猜数的小游戏。 当然我们也可以直接使用C语言库函数中提到的另外两个随机函数来完成这个问题。例:#include

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论