C语言程序设计教案.docx

上传人(卖家):最好的沉淀 文档编号:5777897 上传时间:2023-05-08 格式:DOCX 页数:47 大小:100.92KB
下载 相关 举报
C语言程序设计教案.docx_第1页
第1页 / 共47页
C语言程序设计教案.docx_第2页
第2页 / 共47页
C语言程序设计教案.docx_第3页
第3页 / 共47页
C语言程序设计教案.docx_第4页
第4页 / 共47页
C语言程序设计教案.docx_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、C 语言程序设计教学设计文稿20XX 年 1 月 26 日47课程名称C 语言程序设计授课年专业级课程类型必修课选修课公共基础课();专业基础课();专业课()专业选修课();公共选修课()本课程的教学目标:课程的目的和任务是使学生掌握必须的程序设计的基本知识与基本技能,培养学生分析问题和解决问题的实际能力,使非计算机专业的教学目标学生具有程序设计的思想,重点为学生建立良好的思维模式,为进一步学习专业课程及通过计算机二级考试(C 语言)打下良好的基础。授课方式课堂讲授();实践课()考核方式考试();考查()课程教学总学时数56 学时学分数35 学分学时分配课堂讲授32学时;实践课24学时教材

2、名称C 语言程序设计作者C 语言程序设计实训教程陈维等出版社及出版时间人民邮电出版社 2018指出版定作社及参者出版考时间书授课教师职称单 位授课时间1周次章节名称教学目的与要求:第 1 次课课时2 学时第 1 章 C 语言概述教学目的:让学生掌握初步的算法程序设计思想,了解C 语言的基本特点和构成。教学要求:掌握C 语言程序开发基本步骤,理解算法程序设计基本思想。教学重点和难点:教学重点:熟悉上机运行C 语言程序的一般步骤教学难点:无教学组织(含课堂教学内容、教学方法、 辅助手段、师生互动、时间分配、注明板书设计部分): 新课引入(5 分钟)1、介绍本门课程的性质、学习目标、考核方式、学习方

3、法等。2、从计算机应用基础中学过的计算机语言及语言处理系统引出C 语言。二 讲授新课一、 算法的定义与C 语言出现的背景(5 分钟)举例:什么是算法? 二、 C 语言的特点(5 分钟)1. 语言简洁、紧凑,使用方便、灵活;2. 运算符丰富3. 数据类型多(整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类等)4. 具有结构化的控制语句5. 语法不太严格,自由度大6. 既是高级语言,又具有低级语言的功能7. 成目标代码质量高,程序执行效率8. 可移植性好三、C 语言程序构成(采用程序实例加以说明,并提倡良好的程序设计书写风格,10 分钟)1. C 语言是由函数构成的,至少有一个main

4、()函数;2. 每个函数由函数首部和函数体组成;函数体由说明语句、执行语句组成;3. 每个C 程序从 main()函数开始执行,并在 main()中结束;4. 每个语句和数据定义的最后必须加分号;5. C 程序无输入、输出语句:输入功能由scanf()函数完成;输出功能由 printf()函数完成; 6.可加注释/*/四、上机步骤(上机环境:Turbo C 2.0 和 Visual C+6.0)(15 分钟 课堂演示)1. 进入环境2. 编辑源程序3. 保存源程序 4. 编译源程序5. 执行程序,查看结果6. 退出C 环境三 课堂小结(5 分钟板书)1、 C 语言的构成要素,main 函数在程

5、序中的作用2、 上机操作的过程作业及课外训练:课后习题参考资料(含参考书、文献等):c 程序设计(第四版)谭浩强编著2周次章节名称教学目的与要求:第 2 次课课时2 课时第 2 章 2.1基本数据类型教学目的:学习数据类型的含义,数据的存储形式,变量的声明与引用教学要求:1、理解变量与常量的含义,变量名与变量地址,掌握常量的声明,变量的定义与赋值等操作;2、理解数据类型的含义;3、掌握数据类型(整型、实型、字符型)的常量与变量;教学重点和难点:教学重点:数据类型的含义,数据的存储形式,变量的声明与引用教学难点:数据的存储形式和数据类型的转换教学组织(含课堂教学内容、教学方法、 辅助手段、师生互

6、动、时间分配、注明板书设计部分):一、复习相关知识点:5 分钟(多媒体演示)复习 c 程序开发的一般步骤,引出数据的概念。二、介绍本次教学内容:2 分钟(板书书写本次讲授内容提纲)本次课主要讲授数据的三种基本类型整型,实型,字符型以及各类型的常量和变量表示方法。三、讲授知识点: 80 分钟(多媒体演示,并结合适当板书)一)、常量与变量1、常量和符号常量在程序运行过程中,其值不能被改变的量称为常量2、变量变量代表内存中具有特定属性的一个存储单元,它用来存放数据,这就是变量的值,在程序运行期间,这些值是可以改变的。 变量名实际上是一个以一个名字对应代表一个地址,在对程序编译连接时由编译系统给每一个

7、变量名分配对应的内存地址。从变量中取值,实际上是通过变量名找到相应的内存地址, 从该存储单元中读取数据。二)基本数据类型1、整型数据整型常量即整常数。介绍在c 语言中整型的 3 种表示方法。提问:12,012,0x12 分别对应的数据是多少?2、实型数据C 语言不擅长处理实型数据。提问:12e1,e 哪个是合法的实型数据? 3、字符型数据介绍字符型数据和整型数据的通用性及它本身的特殊性。提问:a的 ASCII 码是 97,d的 ASCII 码是多少?4、字符串常量 字符串常量是一对双撇号括起来的字符序列 提问:“a”和a的区别?经典例题讲解: 大小写字母的转换#include void mai

8、n()char c1,c2; c1=a;c2=b; c1=c1-32; c2=c2-32;printf(“c c,c1,c2);大写字母和小写字母相差 32,大写字母加 32 变小写,小写字母减 32 变大写5、各类数值型数据间的混合运算混合运算:整型(包括int,short,long)、浮点型(包括float,double)可以混合运算。在进行运算时,不同类型的数据要先转换成同一类型,然后进行运算,转换的原则是低精度向高精度转换。提问:表达式c+d的结果是什么类型? 作业及课外训练:课后习题,上机 2 学时参考资料(含参考书、文献等):c 程序设计(第四版)谭浩强编著总结分析:举生活中例子让

9、同学们理解变量的含义3周次章节名称教学目的与要求:第 3 次课课时2 学时第 2 章 2.2 运算符和表达式教学目的:学习运算符的功能、优先级,结合性,以及表达式的运算顺序教学要求:1、理解运算符的功能、优先级,结合性,以及表达式的运算顺序;2、理解表达式求解过程中数据类型的自动转换与强制转换;教学重点和难点:教学重点:各运算符的功能及使用方法教学难点:各运算符的功能及使用方法教学组织(含课堂教学内容、教学方法、 辅助手段、师生互动、时间分配、注明板书设计部分):一、复习相关知识点:5 分钟(多媒体演示)复习上次课学习过的数据类型,是将参与运算的对象。二、介绍本次教学内容:5 分钟(板书书写本

10、次讲授内容提纲)本次课将学习算术运算符,逻辑运算符,关系运算符。三、讲授知识点: 75 分钟(多媒体演示,并结合适当板书)1、算术运算符和算术表达式对于每一种运算符重点了解其运算功能和其对操作数的要求,以及它的优先级和结合性算术运算符:重点是/和两运算符结合应用提问:如何把 123 拆成 1,2,3?2、赋值运算符:强调赋值号左侧一定是变量,不能是运算符和表达式提问:a=a+3=b+7 正确否?3、关系运算符:运算结果是逻辑值3、逻辑运算及其表达式介绍逻辑运算符以及它的重要特性:短路特性4、关系运算符:重点强调和5、自增自减运算符:使用频率最高的运算符,讲解明白前置和后置对表达式和运算对象的影

11、响。4、位运算符:参与运算对象必须先转换成二进制,然后再运算。5、逗号运算符和逗号表达式逗号运算符:将两个表达式连接起来,又称为“顺序求值运算符” 如:5,求解过程:先求解表达式,再求解表达式。整个逗号表达式的值是表达式的值。逗号表达式的一般形式可以扩展为表达式,表达式,表达式,表达式 它的值为表达式的值注意:并不是任何地方出现的逗号都是作为逗号运算符。例如函数参数也是用逗号来间隔的。如:printf(“%d,%d,%d”,a,b,c);printf(“%d,%d,%d”,(a,b,c),b,c) 思考:若表达数学式子abc,在 c 语言中应该怎么表达?作业及课外训练:课后习题课外训练:实践教

12、程习题参考资料(含参考书、文献等):c 程序设计(第四版)谭浩强编著总结分析:多做演示让学生理解运算符的功能,并熟悉c 语言的开发步骤。4周次第 4 次课课时2 学时章节名称2.3 数据类型的转换,3.1 程序设计概述 3.2 scanf()函数和字符输入/输出函数调用教学目的与要求:教学目的:学习数据类型的转换,学习数据输入输出库函数。教学要求:1、掌握数据类型的转换和表达式的计算2、掌握字符数据的输入输出;3、掌握格式输入输出函数。教学重点和难点:教学重点:数据类型的转换,格式输入输出函数教学难点:数据类型的转换和表达式的计算,格式输入输出函数教学组织(含课堂教学内容、教学方法、 辅助手段

13、、师生互动、时间分配、注明板书设计部分):一、复习相关知识点:5 分钟(多媒体演示)计算机的执行,表达式的计算如果想看到结果,必须输出到某个输出设备上,如果在运算过程中需要人机交互,必须从输入设备得到数据,这些都是通过输入输出函数得到的。二、介绍本次教学内容:5 分钟(板书书写本次讲授内容提纲)本次课学习数据的标准输入输出库函数。介绍函数的作用和地位。三、讲授知识点:75 分钟(多媒体演示,并结合适当板书)强制类型转换运算符格式:(类型关键字或类型名)表达式如:(int)(x+y)%(int)p(double)a(float)(5%3) 实例:#include void main( ) flo

14、at x; int i; x=3.6;i=(int) x;printf(“x=%f, i=%d”,x, i);运行的结果是:x=3.600000,i=3数据输入输出的概念及在C 语言中的实现所谓输入输出是以计算机主机为主体而言的, C 语言本身不提供输入输出语句,输入和输出操作是由 C 函数库中的函数来实现的,在使用系统库函数时,要用预编译命令“#include”将有关的“头文件”包括到用户源文件中。1、字符数据的输入输出 字符输出函数 一般形式:putchar(c)函数作用:向终端输出一个字符2、.字符输入函数 一般形式:getchar()函数作用:从终端(或系统隐含指定的输入设备)输入一个

15、字符。 函数值:从输入设备得到的字符3、格式输出函数 函数作用:向终端(或系统隐含指定的输出设备)输出若干个任意类型的数据。 一般格式:printf(格式控制,输出表列)4、格式输入函数 函数作用:按照变量在内存的地址将变量值存进去。 一般格式:scanf(格式控制,地址表列)在输入数据时,遇以下情况时认为该数据结束。 遇空格,或按“回车”或“跳格”(Tab)键; 按指定的宽度结束,如“”,只取列; 遇非法输入。格式输入输出多加练习,不要死记语法。作业及课外训练:课后习题,上机 2 学时参考资料(含参考书、文献等):c 程序设计(第四版)谭浩强编著总结分析:字符输入输出函数强调只能针对一个字符

16、操作5周次第 5 次课课时2 学时章节名称33 程序的 3 种基本结构,3.4 if 选择结构语句 3.5 switch 选择结构语句教学目的与要求:教学目的:学习选择结构教学要求:掌握if 语句的格式、执行过程和用法;掌握switch 语句的格式、执行过程和用法;理解较简单的if 语句嵌套及switch 语句嵌套教学重点和难点: 教学重点:选择结构教学难点:选择结构教学组织(含课堂教学内容、教学方法、 辅助手段、师生互动、时间分配、注明板书设计部分):一、复习相关知识点:5 分钟(板书、互动)运算符的功能、优先级,结合性,以及表达式的运算顺序;常用输入、输出函数的功能和用法。二、介绍本次教学

17、内容:10 分钟(板书书写本次讲授内容提纲)l if 语句的格式、执行过程和用法;l switch 语句的格式、执行过程和用法l 较简单的if 语句嵌套及switch 语句嵌套三、讲授知识点: 75 分钟(多媒体演示,并结合适当板书) 一、条件语句if语句的三种形式语法1:if (表达式)语句; 如:#include main( ) int x,y;scanf(“%d”,&x); y=x;if(x0) y=-x; printf(“|%d|=%d”,x,y);语法2:if (表达式) 语句1;else语 句 2; 如:#include main() int a,b;scanf (“%d%d”,&

18、a,&b);if(ab)printf(“max=%dn”,a); else printf (“max=%dn”,b);语法3:if (表达式1) 语句1;elseif (表达式2)语句2;elseif (表达式3)语句3;else语句n+1;说明:1、 三种形式的 if 语句中,if 关键字后均为表达式(逻辑表达式、关系表达式、赋值表达式、变量等);如:if (a=5) 语句;if (b) 语句;2、 if 语句中,条件表达式必须用括号括起来,在语句后必须加分号;3、 满足条件需执行一组语句时,该组语句必须用括起来; 如:if (a+bc&b+ca&a+cb) s=0.5*(a+b+c);ar

19、ea=sqrt(s*(s-a)*(s-b)*(s-c); printf(“area=%6.2fn”,area);elseprintf(“It is not a trilateral.”);4、 if 语句嵌套时,else 总是与它最靠近的if匹配;如:有一数学函数:x0时,y=1 编写程序,输入x的值,输出相应y的值。二、switch 语句语法1:switch(表达式)case C :语句序列1;1case C :语句序列2;2case C :语句序列n;ndefault:语句序列n+1;语法2:switch(表达式) case C :语句序列1;break;1case C :语句序列2;br

20、eak;2其中:case C :语句序列n;break;ndefault: 语句序列n+1;break;l switch后括号中的表达式可以为任何类型;l C 至C是常量表达式,一般是整数或字符,与switch中表达式的取值对应;1nl default可缺省,当表达式e的值不是C 到C 的情况。1n注意两种语法的执行顺序!例:switch(grade)case A: printf(“85100n”); break; case B: printf(“7084n”); break; case C: printf(“6069n”); break; case D: printf(“60n”); bre

21、ak; default:printf (“errorn”); break;l 允许多个case共用一个执行语句例:switch(ch)case 0:case 1: case 2: case 3: case 4: case 5: case 6: case7: case 8:case 9:digit+; break;case : case t:case n: white+; break; default: character+;作业及课外训练:课后习题,上机 2 学时参考资料(含参考书、文献等):实践教程第三章总结分析:两种选择语句:if-else、switch 语句,注意选择条件的描述;在编写程

22、序过程中,注意分支的作用范围,及复合语句的运用。6周次第 6 次课课时2 学时章节名称教学目的与要求:4.1 for 循环 4.4 3 种循环语句的比较教学目的:学习循环程序设计的含义及思路,掌握三种循环语句的语法结构教学要求:掌握for 语句,while 语句,do-while 语句教学重点和难点:教学重点:三种循环语句while、do-while、for 教学难点:三种循环语句的区别教学组织(含课堂教学内容、教学方法、 辅助手段、师生互动、时间分配、注明板书设计部分):一、复习相关知识点:5 分钟(板书、互动)l 运 if 语句的格式、执行过程和用法;l switch 语句的格式、执行过程

23、和用法l 较简单的if 语句嵌套及switch 语句嵌套二、介绍本次教学内容:10 分钟(板书书写本次讲授内容提纲)l for 语句l while 语句;l do-while 语句三、讲授知识点: 75 分钟(多媒体演示,并结合适当板书) 步骤一 引入新课nn问题1:假如全班41人,欲从键盘上输入每人的数学成绩,然后计算出平均成绩;问题2: 编程计算n!。n 重复执行一组语句是程序设计要求的基本功能之一。在C语言中可以用以下语句来实现循环:(1) for(2) while(3) do-while步骤二 讲授新课一、for 语句语法:for(表达式1;表达式2;表达式3)循环体语句;语义:1、先

24、求表达式1;2、求解表达式2,若其值为真,则执行第三步;若为假,则结束循环;3、执行循环体中的语句;4、求解表达式3;5、转回第二步继续执行n如:for( i=1; i=100; i+) sum=sum+i;可看成:for(循环变量赋初值;循环条件;循环变量增值)语句;说明:(1) 显然for循环更简洁,更灵活;(2) 循环体可以是复合语句;(3) for语句中的三个表达式均可以是逗号表达式,故可同时对多个变量赋初值及修改。如: for(i=0, j=1; jn & in; i+, j+) (4) for语句中三个表达式可省:8 省exp1;如:i=1;for ( ; i5; i+)print

25、f(“%dn”,i); 等价于for (i=1; i5) break;8 省exp3;如:for ( i=1; i5; ) printf (“%dn”,i); i+;等价于 for ( i=1; i5; i+)printf (“%dn”,i);表达式 1、表达式 3 可省略i=1;sum=0;for(;i=100;)sum+=i;i+;8 三个表达式全省时,如: for (; ) 语句;等价于while(1)语句;三个表达式可包含与循环变量无关的语句for(;(c=getchar()!=n;printf(“%c”,c);(5) for语句中的循环体可以是空语句;如: intn=0;for(;n

26、+ =2;);printf(“%d”,n);该程序段的输出结果为:4 二、while语句n 语法:while (exp)循环体语句;n 语义:当exp为真时,执行循环体;为假时,执行循环语句的后续语句;n 如:用while语句构成循环,求sum=1+2+100 程序如下:main()inti=1, sum=0; while (i=100) sum+=i;i+; printf(“%d”,sum);说明:1) 循环体可以用复合语句;2) 在while语句前应有为测试表达式(exp)中的循环控制变量赋初值的语句,以确保循环的正常开始;3) 循环体内应有改变循环控制变量的语句,以确保循环进行有限次后正

27、常结束; 如:i=1;while (i=100) sum=sum+1; (死循环)4) while 循环的特点是先判断后执行,故循环有可能一次都不被执行; 如:i=3;while (i3) printf(“i=%dn”, i);三、do-while 语句语法:do循环体语句; while (exp);语义:当exp 为真时,执行循环体;为假时,执行循环语句的后续语句;如:用do-while 语句构成循环,求 sum=1+2+100程序如下:#include void main( )int i=1,sum=0; do sum+=i; i+;while (i10);例 1:用公式求的近似值,直到最

28、后一项的绝对值小于10-6为止。/41-1/3+1/5-1/7+# include void main( )int s=1; floatn=1.0,t=1,pi=0; while(fabs(t)1e-6) pi=pi+t;n+=2; s=-s;t=s/n;pi=pi*4; printf(“pi=%10.6fn”,pi);例2:求整数a和b的最小公倍数。#include void main( ) int a,b, i; scanf(“%d%d”,&a,&b); i=0;while(1) i+;if (i%a= =0)if (i%b= =0)printf(“%dn”, i); break;作业及课

29、外训练:课后习题,上机 2 学时参考资料(含参考书、文献等):实践教程第 4 章总结分析:1、 while、do-while、for 语句的语法结构,特别是for 语句中三个表达式的作用2、 whie 与 do-while 区别3、 注意循环控制的范围周次第 7 次课课时2 学时章节名称教学目的与要求:45 跳转语句4.7 程序设计举例教学目的:1、掌握嵌套的循环结构掌握breakcontinue 语句2、学会编程的基本方法教学要求:掌握嵌套的循环结构,掌握breakcontinue 语句教学重点和难点:教学重点:循环的嵌套、break 语句、continue 语句、程序举例教学难点:brea

30、k 与 continue 的区别,循环嵌套步骤一 复习引导上节课学习了三种循环语句,我们应该学会灵活运用来解决具体问题步骤二 讲授新课一、循环的嵌套三种循环可以互相嵌套例:打印九九乘法表91=992=1893=27 98=7299=81#include void main( ) int i,j ;for ( i=1; i=9; i+) for (j=1; j=9; j+) printf(“%d*%d=%2d“, i, j, i*j);711=112=213=318=819=921=222=423=628=1629=1831=332=633=938=2439=27说明:printf(“n”);

31、内循环必须完全包含在外循环中,不能交叉; 并列循环允许使用相同的循环变量,嵌套循环不允许二、三种循环的比较1、do-while中循环体至少执行一次;2、while和do-while中在while后指定条件,循环体中包含使循环趋于结束的语句;for在exp3中可含使循环趋于结束的语句,也可含在循环体中。3、while和do-while中,循环变量初始化语句应放在while和do-while语句前;for可在exp1中实现循环变量初始化。4、都能用break跳出循环,用continue结束本次循环。三、break语句和continue语句1、break语句break只能用在循环语句、switch语

32、句中,它的功能是强行退出循环或switch。例:for ( r=1; r100) break; printf(“%f”,area);2、continue语句只能用在循环语句中,它的功能是结束本次循环,跳到循环体中下面尚未执行的语句,接着进行下次是否执行循环的判定。例: for ( n=100; n=200; n+) if (n%3= =0)continue; printf (“%d”,n);说明: continue和break语句的区别:前者只结束本次循环,而不是终止整个循环;后者则是结束整个循环过程。 在多重循环中,break只能退出其所在循环。 允许使用 break 或 goto 语句将循

33、环控制从循环体内转到循环体外,也可以用continue 语句将控制在循环体内转移,但不允许用任何方式从循环体外转到循环体内。四、程序举例例 1:求 Fibonacci 数列:1,1,2,3,5,8的前 40 个数,即 F1=1(n=1),F2=1(n=2),Fn=Fn-1+Fn-2(n大于 2)(P116)例 2:判别m 是否为素数。在此基础上求 100200 间的全部素数程序设计的三种方法:A.枚举法:就是逐一列举出可能解的各个元素,并加以判断,直到求得所需要的解。常用在排列、组合、数据分类、信息检索、多解方程的求解上;B.归纳法:是从大量的特殊性中总结出规律性或一般性的结论。在程序设计上主

34、要表现为递归和迭代、数列和级数求和。C.抽象法:自顶向下,逐步求精。作业及课外训练:课后习题,上机 2 学时参考资料(含参考书、文献等):实践教程,c 程序设计(第四版)谭浩强编著总结分析:1、 分清嵌套循环结构,是内含还是并列,注意循环的作用范围2 、 区别 break 与 continue 语句3、 编程常用的三种方法,分别适用于不同情况8周次第 8 次课课时2 学时章节名称教学目的与要求:5.1 数组 5.2 二维数组1、理解数组的含义和存储特点;2、掌握一维数组、二维数组的声明、初始化,掌握数组元素的引用、赋值及相互关系;3、掌握字符数组的声明、初始化及字符数组元素的引用;理解字符串与

35、字符数组的异同;掌握常用的字符串处理函数;教学重点和难点:教学重点:一维数组、二维数组的定义、初始化,数组元素的引用;字符串与字符数组,常用的字符串处理函数;教学难点:一维数组、二维数组,字符串与字符数组。教学组织(含课堂教学内容、教学方法、 辅助手段、师生互动、时间分配、注明板书设计部分):一、介绍本次教学内容:30 分钟(多媒体演示,并结合适当板书)1、一维数组的定义和初始化:一维数组的定义方式为:类型说明符数组名 常量表达式;其中:类型说明符是任一种基本数据类型或构造数据类型。数组名是用户定义的数组标识符。方括号中的常量表达式表示数据元素的个数,也称为数组的长度。例如:int a10;说

36、明整型数组a,有 10 个元素。float b10,c20;说明实型数组b,有 10 个元素,实型数组c,有 20 个元素。char ch20;说明字符数组ch,有 20 个元素。对于数组类型说明应注意以下几点:1) 1)数组的类型实际上是指数组元素的取值类型。对于同一个数组,其所有元素的数据类型都是相同的。2) 2)数组名的书写规则应符合标识符的书写规定。3) 3)数组名不能与其它变量名相同。例如:main()int a;float a10;是错误的。4) 4)方括号中常量表达式表示数组元素的个数,如a5表示数组a 有 5 个元素。但是其下标从0 开始计算。因此 5 个元素分别为a0,a1,

37、a2,a3,a4。5) 5)不能在方括号中用变量来表示元素的个数,但是可以是符号常数或常量表达式。例如:#define FD 5 main()int a3+2,b7+FD;是合法的。但是下述说明方式是错误的。main()int n=5; int an;6) 6)允许在同一个类型说明中,说明多个数组和多个变量。例如:int a,b,c,d,k110,k220;语言对数组的初始化赋值还有以下几点规定:1) 1)可以只给部分元素赋初值。当 中值的个数少于元素个数时,只 给前面部分元素赋值。例如:int a10=0,1,2,3,4;表示只给a0a45 个元素赋值,而后 5 个元素自动赋 0 值。2)

38、2)只能给元素逐个赋值,不能给数组整体赋值。例如给十个元素全部赋 1 值,只能写为:int a10=1,1,1,1,1,1,1,1,1,1;而不能写为:int a10=1;3) 3)如给全部元素赋值,则在数组说明中,可以不给出数组元素的个数。例如:int a5=1,2,3,4,5;可写为:int a=1,2,3,4,5;2、一维数组的元素引用:数组元素是组成数组的基本单元。数组元素也是一种变量, 其标识方法为数组名后跟一个下标。下标表示了元素在数组中的顺序号。数组元素的一般形式为: 数组名下标其中下标只能为整型常量或整型表达式。如为小数时,C 编译将自动取整。例如:a5ai+jai+都是合法的

39、数组元素。数组元素通常也称为下标变量。必须先定义数组, 才能使用下标变量。在语言中只能逐个地使用下标变量,而不能一次引用整个数组。例如,输出有 10 个元素的数组必须使用循环语句逐个输出各下标变量: for(i=0; i10; i+)printf(%d,ai);而不能用一个语句输出整个数组。下 面 的 写 法 是 错 误 的 : printf(%d,a);【例 1】main()int i,a10; for(i=0;i=0;i-)printf(%d ,ai);二、编写程序举例:30 分钟(多媒体演示,并结合适当板书)1、【例 2】下面是正确的数组引用实例main()int i,a10; for(

40、i=0;i=0;i-)printf(%d,ai);2、【例 3】下面实例说明了当下标不为整数时将自动取整main()int i,a10; for(i=0;i10;)ai+=2*i+1; for(i=0;i=9;i+)printf(%d ,ai); printf(n%d %dn,a5.2,a5.8);1、二维数组的定义和初始化:前面介绍的数组只有一个下标,称为一维数组,其数组元素也称为单下标变量。在实际问题中有很多量是二维的或多维的,因此语言允许构造多维数组。多维数组元素有多个下标,以标识它在数组中的位置,所以也称为多下标变量。本小节只介绍二维数组,多维数组可由二维数组类推而得到。二维数组定义的

41、一般形式是:类型说明符 数组名常量表达式 1常量表达式 2其中常量表达式 1 表示第一维下标的长度,常量表达式2 表示第二维下标的长度。例如:int a34;说明了一个三行四列的数组,数组名为 a,其下标变量的类型为整型。该数组的下标变量共有 34个,即:a00,a01,a02,a03a10,a11,a12,a13a20,a21,a22,a23二维数组在概念上是二维的,即是说其下标在两个方向上变化,下标变量在数组中的位置也处于一个平面之中,而不是象一维数组只是一个向量。但是,实际的硬件存储器却是连续编址的,也就是说存储器单元是按一维线性排列的。如何在一维存储器中存放二维数组,可有两种方式:一种是按行排列, 即放完一行之后顺次放入第二行。另一种是按列排列, 即

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

当前位置:首页 > 办公、行业 > 待归类文档
版权提示 | 免责声明

1,本文(C语言程序设计教案.docx)为本站会员(最好的沉淀)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|