C语言项目开发基础与实战 教案全套 徐嵩松 第1-48讲 - 绪论-数据存储持久化_第1页
C语言项目开发基础与实战 教案全套 徐嵩松 第1-48讲 - 绪论-数据存储持久化_第2页
C语言项目开发基础与实战 教案全套 徐嵩松 第1-48讲 - 绪论-数据存储持久化_第3页
C语言项目开发基础与实战 教案全套 徐嵩松 第1-48讲 - 绪论-数据存储持久化_第4页
C语言项目开发基础与实战 教案全套 徐嵩松 第1-48讲 - 绪论-数据存储持久化_第5页
已阅读5页,还剩420页未读 继续免费阅读

下载本文档

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

文档简介

第页学院教师课时授课教案 编号:1授课日期授课班级授课学时2课型理论课题:§1绪论教学目标:本讲将向学生简要介绍C语言的发展,优势,语法与程序编写步骤及过程,具体目标包括:1.了解C语言的发展历史与优势;2.了解C语言程序的特点;3.了解计算机语言的技术前沿;4.理解程序设计思想与程序编写步骤。重点与难点:重点:C语言的特点与优势。难点:计算机程序设计的思想与程序编写步骤。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第1讲教学环节教学内容教学组织与教学方法组织教学引入新课难点重点重点总结1.选举或推荐课代表;2.介绍本学期课程内容、安排及考评办法。信息技术已深入每个人的日常生活,硬件提供运行平台,软件实现功能,软件编制用计算机语言。§1计算机语言的发展§1.1计算机语言分类一、与硬件的距离1.低级语言:机器语言、汇编语言优点:执行速度快,效率高,文件小缺点:难学,难调,与硬件密切相关,移植性差2.高级语言:除机器与汇编外的所有其他语言优点:易学,易用,移植性好,与硬件相关性差缺点:速度较慢,效率较低,文件较大3.以硬件的优势弥补语言的弱点二、语言体系1.面向过程面向过程(ProcedureOriented)是一种以过程为中心的编程思想。“面向过程”也可称之为“面向记录”编程思想。问题:在程序过大或者结构太过于复杂时,程序将难以处理,难以调试,或容易崩溃,而且难以保证信息传输的安全。2.面向对象面向对象语言(ObjectOriented)是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。优点:以对象为单位,将大的问题划分为小的问题,分别处理,极大的提高了软件的开发效率,也极大方便了软件生命周期内的维护,同时也大大加强了信息传输的安全性。§1.2计算机语言的发展趋势 面向对象 移动化,智能化 安全性 平台无关性§1.3常见的计算机语言一、常见的计算机语言VB.Net,C,C++,C#.Net,Java,Objective-C,Swift,Python,JSP,ASP.Net,PHP,HTML,……二、2021年8月计算机语言排名数据:/tiobe-index/§1.4C语言的发展与特点一、C语言的发展历史1.CPL(CombinedProgrammingLangurage)语言1963年,英国剑桥大学2.BCPL(BaseCPLangurage)语言1967年,英国剑桥大学3.B语言(取BCPL的第一个字母)1970年,美国贝尔实验室的KenThompson用途:开发了第一个UNIX操作系统4.C语言(取BCPL的第二个字母)1973年,美国贝尔实验室的D.M.RITCHIE用途:重写了UNIX强调:C->UNIX->Linux->Android5.C++语言(引入面向对象的概念,面向过程+面向对象)1983年,美国贝尔实验室6.Java语言(去除C++的指针带来的不安全性与难实现的多继承,针对网页应用,纯面向对象)1996年,美国Sun公司(2009年被oracle收购)二、C语言的特点是一个有结构化程序设计、具有变量作用域(variablescope)以及递归功能的过程式语言;传递参数均是以值传递(passbyvalue),另外也可以传递指针(apointerpassedbyvalue);不同的变量类型可以用结构体(struct)组合在一起;只有32个保留字(reservedkeywords),使变量、函数命名有更多弹性;部份的变量类型可以转换;通过指针(pointer),C语言可以容易的对存储器进行低级控制;预编译处理(preprocessor)让C语言的编译更具有弹性。计算机语言的发展及趋势目前常见的计算机语言C语言的发展历史及特点将计算机类比为一个人体,硬件是身体,软件是思维。简介硬件、操作系统、应用程序与用户的层次结构图。以行程安排表为例进行类比。讨论,以“家里不可能只发现一只蟑螂”来类比调试工作。以应答通讯工具(电话,QQ,微信等)的处理方式进行类比。注:TIOBE编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于互联网上有经验的程序员、课程和第三方厂商的数量。排名使用著名的搜索引擎(诸如Google、MSN、Yahoo!、Wikipedia、YouTube以及Baidu等)进行计算。以专业英语的笑话强调“+”的念法。教师先就上述内容进行简要回顾、复习,再以提问的方式进行总结。

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲C语言程序结构的相关基础知识。教学反思、总结:学院教师课时授课教案 编号:2授课日期授课班级授课学时2课型理论课题:§2.1C语言程序的结构教学目标:本讲将向学生简要介绍C语言的程序结构、保留字、相关语法与程序编写步骤及过程,具体目标包括:1.掌握C语言的程序结构;2.掌握C语言常用保留字的含义;3.掌握C语言标识符的命名规则;4.了解C语言程序的编写步骤与过程。重点与难点:重点:C语言程序结构、常用保留字的含义、标识符的命名规则。难点:常用保留字的含义、标识符的命名规则。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第2讲教学环节教学内容教学组织与教学方法组织教学引入新课重点难点重点难点重点难点重点总结1.考勤;2.对上讲课及作业批改情况进行总结;3.介绍本讲课内容及相关重难点。用日常生活中的文章结构,交流过程来类比C语言的程序结构,一般包括头部(引言),正文(论述),结尾(结论与致谢等)。§2打印系统菜单§2.1一个最简单的C语言一、helloworld程序voidmain(){printf(“HelloWorld!”);}二、C语言程序结构C语言的程序由不同的函数组成;函数结构为:函数返回值类型,函数名,参数列表,函数体与函数范围标识;一个C语言程序由main函数(主函数)开始,有且仅有一个main函数;一个C语言的语句由“;”结束;范围标识符:“{”与“}”。三、程序设计语言的功能程序=数据+结构软件=程序+文档1.数据表达⑴基本数据类型:整型(int)单精度型(float)双精度型(double)字符型(char)⑵复杂数据类型 数组(array) 结构(structure) 文件(file) 指针(pointer)⑶数据对象变量(variable):其值在程序中是可变的,如a=3;a=4;……常量(constant):其值在程序中是不变的,如3.14,2.718,“iloveu”,‘a’,true,false,……2.结构(流程控制)顺序(sequentialcontrolstructure)分支(branchcontrolstructure)循环(loopcontrolstructure)附:pascal语言(1971年,第一个结构化程序设计语言)3.文档:需求分析报告,数据字典,数据流图,测试报告,维护报告及软件说明书等四、程序设计语言的语法1.C语言中的标识符⑴保留字或关键字auto,break,case,char,const,continue,default,do,double,else,enum,extern,float,for,goto,if,int,long,register,return,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile,while⑵用户自定义标识符①用途:变量、常量、函数名,自定义数据类型名②规则:由字母、数字与下划线组成第一个字符必须是字母或下划线区分大小写(大小写敏感)非法字符:+,-,<,>,=,?,*,/,\,&附:/,四川公安政务网可查川内重名2.C语言的主要语法单位⑴表达式 由运算符与标识符组成 不包括”;”⑵标识符定义 变量定义:类型名变量名 常量定义:const类型名常量名 使用规则:先定义再使用⑶语句 以”;”结束 可换行(但最好不换行,可拆成短语句)⑷语句块 以”{}”作为范围界定 在里面定义的变量,其作用域限于该语句块五、实践打开VC++或VS软件,练习HelloWorld程序。C语言程序的基本结构C语言程序的基本组成C语言程序的语法用购物车系统程序进行引入。多媒体演示强调退格格式引入“程序员练书法”的joke用数学中的普通函数进行类比。强调英文字符。引入软件工程中对程序文档的要求。结合英文单词的含义详细讲解。简要讲解演示程序中变量值的变化。简介e的计算方法可用生活中的示例进行类比。后发展为delphi强调重要性用英语语法进行类比,程序错误:语法错误与语义错误系统定义标识符,有确切的含义,不允许重名由中国人的取名规则(姓+家谱+名)进行类比,借以宏扬中国传统与文化。强调标识符由变量与常量组成教师统一讲解,个别辅导教师先就上述内容进行简要回顾、复习,再以提问的方式进行总结。

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲C语言中printf()函数的相关知识。教学反思、总结:学院教师课时授课教案 编号:3授课日期授课班级授课学时2课型理实课题:§2.2printf()函数与打印主菜单教学目标:本讲将向学生详细讲解C程序的标准输出函数printf()的格式与相关符号的含义,并实现主菜单的打印输出,具体目标包括:1.熟练掌握C语言中printf()函数的格式与使用方法;2.熟练掌握C语言中printf()函数所使用的类型占位符的含义;3.熟练掌握C语言中输出格式控制转义符的功能;4.能够灵活应用printf()函数完成相关的程序设计。重点与难点:重点:printf()函数的格式,类型占位符及转义符的含义。难点:应用printf()函数完成复杂数据输出的程序设计。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第3讲教学环节教学内容教学组织与教学方法组织教学引入新课重点难点难点1.考勤;2.对上讲课及作业批改情况进行总结;3.介绍本讲课内容及相关重难点。程序的主要结构一般由三部分组成:数据输入,数据处理与数据输出,C语言的printf()函数是一个非常重要的文本输出函数。§2.2printf()函数与打印主菜单一、实现购物车主菜单的输出参考程序:voidmain(){ printf("pleaseselectthefunction:\n"); printf("1listthecart\n"); printf("2addtheproducttocart\n"); printf("3deletetheproducttocart\n"); printf("4modifytheproductnumincart\n"); printf("5quit\n");}注:讲解”\n”的功能是换行。二、printf()的格式1.格式printf(格式控制字符串,输出参数1,输出参数2,…,输出参数n);2.格式控制字符串⑴组成普通输出字符:原样输出格式符:由后面的参数依次替换转义符:控制输出格式注:格式控制字符串必须用””(英文)括起来。⑵格式符①数据类型 %d:整型数据 %ld:长整型数据 %f:单精度浮点数据 %lf:双精度浮点数据 %e:科学计算法 %g:自动选择%f和%e %c:字符型数据 %s:字符串②格式控制引入:如何左对齐,右对齐,及保留整数或小数位数? %md:输出整数,宽度为m,右对齐 %-md:输出整数,宽度为m,左对齐 %m.nf:输出单精度浮点,整数位宽度为m,小数位宽度为n,右对齐 %-m.nf:输出单精度浮点,整数位宽度为m,小数位宽度为n,左对齐⑶常用转义符 \n:输出换行符 \t:输出制表位 \\:输出\ \’:输出单引号 \”:输出双引号注:必须引入头文件--<stdio.h>附:standard,input,output,header3.实践:公司新进员工工资为3500,每年递增10%,请显示前5年,员工工作年限与对应工资,工作年限显示宽度为2位,工资保留2位小数。#include<stdio.h>voidmain(){intworkYear=1;floatsalary=5000;printf(“year:%2d,salary:%.2f\n”,workYear,salary);printf(“year:%2d,salary:%.2f\n”,workYear+1,salary*1.1);printf(“year:%2d,salary:%.2f\n”,workYear+2,salary*1.1*1.1);printf(“year:%2d,salary:%.2f\n”,workYear+3,salary*1.1*1.1*1.1);printf(“year:%2d,salary:%.2f\n”,workYear+4,salary*1.1*1.1*1.1*1.1);}就上讲课的主要内容及相关重难点作简要回顾与总结。由上讲的“helloworld”程序进行引入。适当对C语言的程序结构进行复习,通过演示展示例程的执行结果,再个别辅导的方式帮助学生完成实践任务。演示”\n”的功能强调除汉字与中文标点外,其他均为英文符号。包括英文或中文讨论原因(计算机无法分清是输出字符还是变量)复习数据类型,演示e与E的区别:科学计数法中e的大小写由word排版引入强调后面的参数必须为数值。演示讨论原因讨论原因讨论原因讲解头文件的功能(方便运算,节约内存),可扩展到Java和Python中对库的引入,打开一个头文件,展示。讲解stdio的相关英文单词以辅助学生记忆。按要求完成下列程序。先演示程序运行结果,给出变量赋值与第1个printf()函数语句,再请学生完成其他printf()函数语句。提问:如果要算30年呢?目的是引入循环结构的作用。

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲C语言的数据类型与运算符的相关知识。教学反思、总结:学院教师课时授课教案 编号:4授课日期授课班级授课学时2课型理实课题:§2.3C程序数据类型与运算符教学目标:本讲将向学生详细讲解C程序的标识符(变量、常量)的定义方法与运算符的功能,具体目标包括:1.熟练掌握C语言程序的结构与语法等基础知识;2.熟练掌握C语言程序的标识符定义方法;3.熟练掌握C语言的运算符功能、优先级与使用方法。重点与难点:重点:标识符定义方法,运算符的功能、优先级与使用方法。难点:运算符的功能、优先级与使用方法。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第4讲教学环节教学内容教学组织与教学方法组织教学引入新课重点难点重点重点难点难点难点难点总结1.考勤;2.对上讲课及作业批改情况进行总结;3.介绍本讲课内容及相关重难点。程序的基本结构就是数据输入、数据处理及数据输出,熟练掌握数据类型是程序编写的基础。§2.3C程序的标识符定义与运算符一、常量与变量的定义常量:程序在运行中,其值不能改变的量。变量:程序在运行中,其值可以改变的量。二、变量与常量的声明声明:向内存申请空间,用于存储数据。1.格式⑴类型名变量名列表⑵const类型名常量名=常量值注:变量可在声明的同时赋初值,也可在声明完成后,在赋值语句中赋值;常量必须在声明的同时赋初值。2.变量与常量的命名命名需要有意义驼峰命名法(camelcase)示例:intnumberOfStudentsfloataverageScore3.基本数据类型⑴整型:int⑵字符型:char⑶单精度型:float⑷双精度型:double⑸布尔型(逻辑型) 0为假:false 一切非0为真:true三、基本运算符1.算术运算符⑴+:加⑵-:减,取负⑶*:乘注:不能省略,也不能用·来代替。⑷/:除整除浮点除示例:inta=5,bi=4,c;floatbf=4;c=a*1.0/b;c=a/b;⑸%:取模2.关系运算符⑴<:小于⑵>:大于⑶<=:小于等于⑷>=:大于等于⑸==:等于(比较)⑹!=(<>):不等于注:关系运算符运算数据可以是除布尔型的其他数据类型,运算结果是逻辑型(布尔型),但在C语言里用非0代表真,0代表假。3.逻辑运算符⑴&&:与⑵||:或⑶!:非注:由日常生活中的事例进行引入逻辑运算符的运算量是逻辑型(布尔型),运算结果也是逻辑型(布尔型)输出结果时用%d来演示关系与逻辑运算的结果4.优先级: 算术运算符 关系运算符 逻辑运算符5.示例⑴18岁以上的男生⑵工资在4000-6000之间的员工⑶退休条件:男性60岁以上,女性55岁以上C语言的基本数据类型C语言中变量与常量的赋值C语言的运算符及其优先级就上讲课的主要内容及相关重难点作简要回顾与总结。以人的各种属性引入数据类型的概念。在多媒体上演示两种量的改变情况。引出数据类型。强调变量与常量必须先声明再使用。强调变量名列表中可包含多个变量。演示强调:对英语不熟的同学暂时可用拼音代替。讨论各类型的适用领域。都属浮点型,区别在于有效位数的不同。适用于只有两种值的数据类型:婚否,性别)。略略演示示例,强调整除与浮点除的区别。提问:如何用两个整数进行浮点除法运算?引入数据类型的高低级别的概念。详细结合示例讲解复习布尔型(逻辑型)的数据类型。补充字符串的比较规则。借用真值表来辅助讲解。讨论,演示教师先就上述内容进行简要回顾、复习,再以提问的方式进行总结。

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲C语言的顺序结构程序设计的相关知识。教学反思、总结:学院教师课时授课教案 编号:5授课日期授课班级授课学时2课型理实课题:§2.4C语言顺序结构程序设计教学目标:本讲将向学生简要介绍C语言中特有的++与--运算符与顺序结构程序设计方法,具体目标包括:1.熟练掌握C语言中++与--运算符的功能与用法;2.熟练掌握流程图的画法;3.掌握C语言中顺序结构程序设计方法。重点与难点:++与--运算符的功能与用法,程序设计的步骤,流程图的画法,及顺序结构程序设计方法。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第5讲教学环节教学内容教学组织与教学方法组织教学:引入:新课重点重点难点重点难点总结1.考勤;2.对上讲课及作业批改情况进行总结;3.介绍本讲课内容及相关重难点。顺序、分支与循环是三种结构化程序设计结构之一,在一个系统中,顺序结构适合流程化问题的解决。补充1:++与--运算符1.功能:+1或-1示例:inti=3,n;i++;++i;n=i;2.i++:在赋值号与其他函数执行之后加1++i:在赋值号与其他函数执行之前加1示例1:inti=3;printf(“%d\n”,i++);printf(“%d\n”,i);示例2:inti=3;printf(“%d\n”,++i);printf(“%d\n”,i);示例3:inti=3,n,j=3,m;n=(i++)+(++i);printf(“%d\n”,n);printf(“%d\n”,i);m=(j++)+(++j)+(++j)+(j++);printf(“%d\n,m);补充2:+=,-=,*=,/=运算符s+=i:s=s+i;s-=i:s=s-i;s*=i:s=s*i;s/=i:s=s/i;§2.4C语言顺序结构程序设计一、求华氏温度100度对应的摄氏温度。计算公式:c=(5×(f-32))/91.流程图2.参考程序:#include<stdio.h>voidmain(){floatc,f=100;c=(5*(f-32))/9;printf(“the%fdegreesFahrenheitis%fdegreesCelsius!\n”,f,c);return0;}二、根据三角形的三边长,求三解形面积。计算公式:QUOTEarea=ss-as-b(s-c)area=其中:QUOTEs=a+b+c2s=a+b+c1.流程图2.参考程序#include<stdio.h>#include<math.h>voidmain(){floatarea,s,a,b,c;a=3,b=4,c=5;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“theareaofthetriangleis%f\n”,area);}三、利用韦达定理QUOTEx=-b卤b2-4ac2ax=-流程图:++与--运算符的功能与应用+=,-=,*=,/=,%=赋值号的功能与应用顺序结构程序设计的步骤与方法就上讲课的主要内容及相关重难点作简要回顾与总结。复习三种结构化程序结构。演示演示所有示例的结果。34448518,由左至右两两相加:4+4+5+5。演示讲解流程图各种符号的含义。详细讲解流程图转换为程序的过程。提问:为什么不定义为整型?教师给出流程图经过讨论后,在教师的启发教学下,由学生自行写出程序。用英文单词的拼写辅助讲解sqrt()函数的功能。教师给出流程图,由学生自行写出程序。教师先就上述内容进行简要回顾、复习,再以提问的方式进行总结。

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲显示购物车主菜单的顺序结构程序设计的相关知识。教学反思、总结:学院教师课时授课教案 编号:6授课日期授课班级授课学时2课型实践课题:§2.5C语言顺序结构程序设计综合练习(显示购物车系统主菜单)教学目标:本讲将以一些综合性的练习题为引导,对C语言的基础知识与顺序结构程序设计方法做一个回顾与复习,具体内容包括:1.C语言的语法;2.C语言的常用基本数据类型;3.C语言变量、常量、运算符及表达式的使用;4.C语言顺序结构程序设计方法的灵活运用。重点与难点:C语言变量、常量、运算符及表达式的使用,顺序结构程序设计的步骤与方法。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第6讲教学环节教学内容教学组织与教学方法组织教学:复习:实践1.考勤;2.对上讲课及作业批改情况进行总结;3.介绍本讲课内容及相关重难点。1.C语言基础知识程序的结构语句的语法标识符定义规则2.C语言的数据类型字符型整数型单精度浮点、双精度浮点3.C语言变量与常量的定义与使用4.C语言printf()函数的使用方法5.C语言常用函数的功能与使用方法综合实践1:将一个三位整数n(999≥n≥100),将其逆序输出,并求出各位之和、平均值以及各位之积。一、程序思路1.将n的百位、十位与个位数分解出来,并分别赋值给3个变量x,y,z;2.按z,y,x的顺序打印;3.计算x,y,z的和,平均值及积,并分别输出二、算法n(xyz)=x*100+y*10+zx=(int)floor(n/100)y=(int)floor((n-x*100)/10)z=n-x*100-y*10或:x=n/100y=(n-x*100)/10z=n-x*100-y*10三、流程图综合实践2:给定半径r,求圆的面积s,圆球的体积v,要求定义常量pi,赋值为3.14。一、程序思路1.定义常量pi,并赋值为3.142.为半径r赋值3.计算圆面积s,圆球体积v,并输出二、算法s=pi*r2v=4/3*pi*r3注:4/3的计算不能采用整除。三、关键语句constfloatPI=3.14;s=PI*pow(r,2);v=(1.0*4/3)*PI*pow(r,3);头文件:#include<math.h>综合实践3:输出购物车系统主菜单。参考程序:voidmain(){ printf("pleaseselectthefunction:\n"); printf("1listthecart\n"); printf("2addtheproducttocart\n"); printf("3deletetheproducttocart\n"); printf("4modifytheproductnumincart\n"); printf("5quit\n");}就上讲课的主要内容及相关重难点作简要回顾与总结。简要回顾、复习先讨论各位的分离方法,再给出流程图,请同学们自行完成,教师进行巡视与总结。考虑x,y,z的整型定义,在赋值前应该强制转换类型。讨论先讨论各位的分离方法,再给出流程图,请同学们自行完成,教师进行巡视与总结。要求使用求次方的函数pow()讨论浮点除的方法强调:pow()的参数与返回值类型均为double。教师给出程序运行结果,由学生自行完成相关程序的设计与调试。

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲scanf()函数的使用相关知识。教学反思、总结:学院教师课时授课教案 编号:7授课日期授课班级授课学时2课型理实课题:§3.1scanf()函数的格式与使用教学目标:本讲将向学生简要介绍scanf()函数的格式与使用方法,具体目标包括:1.掌握scanf()函数的功能、格式与参数的含义;2.复习巩固C语言的数据类型;3.复习巩固C语言的变量与常量。重点与难点:scanf()函数的功能、格式及参数的含义。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第7讲教学环节教学内容教学组织与教学方法组织教学:引入:新课:重点难点难点难点总结1.考勤;2.对上讲课及作业批改情况进行总结;3.介绍本讲课内容及相关重难点。计算机处理问题的基础步骤是:输入数据、处理数据与输出结果,前面的printf()函数用于输出数据及结果,scanf()则用于输入数据。§3.1scanf()函数的功能与格式注:必须引入头文件--<stdio.h>。一、scanf()函数的功能由键盘上输入各类数据,并将其存储于相应的变量。注:可处理字符、字符串、整数、单精度与双精度等所有类型的数据。二、格式scanf(格式控制字符串,地址列表);1.格式控制字符串“”括起来特殊格式:%d,%ld,%f,%lf,%c,%s注:格式控制字符串中,除特殊格式以外的字符均需要在输入数据时输入,通常用于分隔输入数据。2.参数列表输入参数:用“&”作前缀;列表中的参数允许多个。三、示例1.从键盘上输入一个单精度浮点数,并打印出来。2.从键盘上输入一个字符,并打印出来。3.在键盘上输入两个整数,并打印两个数之和。4.在键盘上以”a=x,b=y”的格式(x与y是待输入的值),并以”a+b=z”(z是计算后的和)的格式输出。参考程序:#include<stdio.h>voidmain(){inta,b;printf(“请以a=x,b=y的格式输入a与b的值!”);scanf(“a=%d,b=%d”,&a,&b);printf(“a+b=%d\n”,a+b);}5.输入一个整数,求其绝对值6.输入华氏温度,求对应的摄氏温度,计算公式为:c=(5×(f-32))/9,c为摄氏温度,f为华氏温度。7.打印主菜单,接收用户输入选项,并输出用户的输入内容。四、字符的专用输入/输出函数1.输入字符函数getchar()⑴格式:chargetchar()⑵功能:在用户输入回车键后,返回键盘缓冲区中的第1个字母。⑶示例:#include<stdio.h>voidmain(){charc;c=getchar();printf(“c=%c\n”,c);//fflush(stdin);c=getchar();printf(“c=%c\n”,c);}注:fflush()的功能是清空键盘缓冲区,联系键盘工作原理来辅助讲解。2.输入字符函数getch()⑴格式:chargetch()注:#include<conio.h>⑵功能:无回显地立即返回用户输入的字符。⑶示例:将上例中的getchar()换成getch(),注意运行结果的不同(去掉fflush()函数)。⑷引例:在显示主菜单程序的最后加入getch()与getchar()两个函数用于暂停,比较两个函数的区别。3.输出字符函数putchar()⑴格式:voidputchar(字符变量|字符常量);⑵功能:输出参数中所存储的字符。4.输出字符函数putch()⑴格式:voidputch(字符变量|字符常量);⑵功能:输出参数中所存储的字符。注:与putchar()相同需包含<conio.h>头文件scanf()函数的格式与应用getchar()函数与putchar()函数的格式与应用getch()函数与putch()函数的格式与应用就上讲课的主要内容及相关重难点作简要回顾与总结。讲解键盘原理,以帮助学生记忆函数名。同printf()函数。强调所有函数均需要考虑其所属的头函数。复习数据类型。与printf()函数中的定义相同参见P31相关内容表示求地址与printf()函数中的定义相同强调求地址的&参见P30例2-6讲解abs()函数讨论:c与f的数据类型?讨论:数据类型为整数还是字符?强调:无参数,有返回值。在键盘上输入abc比较有fflush()函数与没有的区别无参数,有返回值,但一般舍弃。强调不需要回车键确认,一般用于暂停等待用户按任意键继续。强调一次只能输出一个字符。讨论:如何输出换行符?教师先就上述内容进行简要回顾、复习,再以提问的方式进行总结。

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲C语言单边分支结构程序设计的相关知识。教学反思、总结:学院教师课时授课教案 编号:8授课日期授课班级授课学时2课型理实课题:C语言标准输入/输出函数及语句综合练习教学目标:本讲将以一些综合性的练习题为引导,对C语言的标准输入/输出函数及语句做一个回顾与复习,具体内容包括:1.C语言的标准输出函数printf();2.C语言的标准输入函数scanf();3.C语言的常用字符输入/输出函数;4.C语言的各类运算符的功能及其应用。重点与难点:C语言的标准输入函数scanf(),常用字符输入/输出函数,各类运算符的功能与应用。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第8讲教学环节教学内容教学组织与教学方法组织教学:复习:重点难点重点难点1.考勤;2.对上讲课及作业批改情况进行总结;3.介绍本讲课内容及相关重难点。1.C语言的标准输入函数scanf() 格式控制符的种类及作用 普通字符的作用 变量列表的格式2.C语言的常用字符输入/输出函数 getchar()与putchar() getch()与putch()3.C语言的运算符 算术运算符:+,-,*,/,%,++,-- 关系运算符:<,>,<=,>=,==,!= 逻辑运算符:&&,||,! 按位运算符:&,|,!,^,~,<<,>>任务一:输入一个华氏温度,输出相应的摄氏温度,计算公式:1.流程图2.参考程序:#include<stdio.h>voidmain(){floatc,f;printf(“PleaseinputtheFahrenheitderee:”);scanf(“%f”,&f);c=(5*(f-32))/9;printf(“the%fdegreesFahrenheitis%fdegreesCelsius!\n”,f,c);}任务二:根据输入的三角形三边长,求三解形面积。计算公式:QUOTEarea=ss-as-b(s-c)area=ss-as-b(s-c),其中:QUOTEs=a+b+c1.流程图2.参考程序:#include<stdio.h>#include<math.h>voidmain(){floatarea,s,a,b,c;printf(“pleaseinputthe1stsidelength:“);scanf(“%f”,&a);printf(“pleaseinputthe2ndsidelength:“);scanf(“%f”,&b);printf(“pleaseinputthe3rdsidelength:“);scanf(“%f”,&c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“theareaofthetriangleis%f\n”,area);}任务三:输出购物车系统主菜单,并读取用户的输入选项。参考程序:#include<stdio.h>voidmain(){intintChoice; printf("pleaseselectthefunction:\n"); printf("1listthecart\n"); printf("2addtheproducttocart\n"); printf("3deletetheproducttocart\n"); printf("4modifytheproductnumincart\n"); printf("5quit\n");scanf(“%d”,&intChoice);printf(“yourchoiceis%d\n”,intChoice);}就上讲课的主要内容及相关重难点作简要回顾与总结。简要回顾、复习包含在stdio.h中包含在conio.h中先给出前面所做的练习题,讨论本题与前题的不同点。强调程序书写格式注意输出提示信息,以加强界面的友好。讨论:是否任意三边长都能构成三角形?比较用scan同时处理输入三个变量的方案与一次处理一个变量的方案?讨论:用整型变量还是字符型变量接收用户的输入信息?

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲C语言分支结构程序设计的相关知识。教学反思、总结:学院教师课时授课教案 编号:9授课日期授课班级授课学时2课型理实课题:§3.4双边分支结构教学目标:本讲将向学生简要介绍单边分支、双边分支程序结构的功能与编写步骤,具体目标包括:1.掌握分支结构流程图的画法及功能;2.掌握单边分支结构的程序设计方法;3.掌握双边分支结构的程序设计方法。重点与难点:重点:单边分支与双边分支的语句。难点:单边分支与双边分支结构的程序编写方法。解决措施:使用多媒体教学工具,在电子课件的帮助下,结合提问、讨论及互动等多种教学方法,再辅以综合示例予以解决。教学方法设计:讲授,讨论,演示教学资源:PPT,DEV-C编译器,多媒体教学工具

学院教案用纸第9讲教学环节教学内容教学组织与教学方法组织教学:引入:新课:重点难点难点重点难点总结1.考勤;2.对上讲课及作业批改情况进行总结;3.介绍本讲课内容及相关重难点。日常生活中,经常需要对条件进行判断,以确定相应的操作。C语言中对条件的判断有单边、双边与多边三种。§3.4分支结构一、单边分支1.任务描述:利用韦达定理求一元二次方程的根,预先判断b2-4ac的值,若大于等于0,则开始求根。2.任务分析3.问题提出:需要对b2-4ac的结果进行判断4.关键问题:单边分支5.流程图6.程序编写过程参考程序:floatdelta;delta=b*b-4*a*c;if(delta>0){floatsqrtDelta=sqrt(delta);x1=(-b+sqrtDelta)/(2*a);x2=(-b-sqrtDelta)/(2*a);}二、双边分支结构1.任务描述:利用韦达定理求一元二次方程的根,预先判断b2-4ac的值,若大于等于0,则开始求根,否则给出错误提示。2.任务分析3.问题提出:需要对b2-4ac的结果进行判断4.关键问题:双边分支5.流程图6.程序编写过程参考程序:floatdelta;delta=b*b-4*a*c;if(delta>0){floatsqrtDelta=sqrt(delta);x1=(-b+sqrtDelta)/(2*a);x2=(-b-sqrtDelta)/(2*a);printf(“x1=%.2f,x2=%.2f\n”,x1,x2);}else{printf(“Thereisnorealroot!\n”);}单边分支的流程图与语句结构双边分支的流程图与语句结构就上讲课的主要内容及相关重难点作简要回顾与总结。由上讲课的韦达定理对△正负判断引入。分组、讨论前述相关知识:四则运算,关系运算简介流程图画法强调填空法,讲解关键部分知识,分组,练习,解决任务。强调括号的应用。两种情况都需要处理分组、讨论前述相关知识:四则运算,关系运算强调填空法,讲解关键部分知识,分组,练习,解决任务。学生编写程序,教师检查、纠错、评分。教师先就上述内容进行简要回顾、复习,再以提问的方式进行总结。

课外作业:1.复习本次课所授的相关知识内容;2.预习下讲C语言多边分支结构程序设计的相关知识。教学反思、总结:

温馨提示

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

评论

0/150

提交评论