第八节 数组

——一维数组

1:通过对本节课的学习,能够了解、掌握有关数组的相关概念及一维数组定义、初始化、引用和在程序中使用。

1.1教学目的:

1. 数组的相关概念

2. 一维数组的定义、初始化、引用及应用

1.2教学内容:

1. 概念:数组、数组元素、数组下标

2. 一维数组的定义、初始化、引用

3.一维数组在程序中的应用

1.3教学重点:

一维数组的定义、初始化、引用和一维数组在程序中的应用

1.4教学方法:

讲授法、课件演示

1.5学习方法:

听课、做笔记、课后作业

1.6学习时间

第十四周

2:回顾上一节:[15分钟]

do-while循环语句的意义、构成及应用

break、continue循环语句的意义、构成及应用

循环语句的嵌套意义及应用

3:课程知识点讲解:

具体知识点1:数组相关概念 [15分钟]

1、数组:具有相同数据类型的数据的有序的集合。

2、数组元素:数组中的元素。数组中的每一个数组元素具有相同的名称,不同的下标,可以作为单个变量使用,所以也称为下标变量。在定义一个数组后,在内存中使用一片连续的空间依次存放数组的各个元素。

3、数组的下标:是数组元素的位置的一个索引或指示。

4、数组的维数:数组元素下标的个数。根据数组的维数可以将数组分为一维、二维、三维、多维数组。

具体知识点2:一维数组的定义、初始化、引用 [20分钟]

一维数组中的各个数组元素是排成一行的一组下标变量,用一个统一的数组名来标识,用一个下标来指示其在数组中的位置。下标从0开始。一维数组通常和一重循环相配合,对数组元素进行处理。

引例:【案例6.1】输入5个学生某门课的成绩,要求按与输入次序相反的顺序输出。

编程分析:定义5个变量,根据前面所学的顺序结构可以实现其功能。

程序如下:

main()

{ float s1, s2, s3, s4, s5; 

printf("Enter five scores: "); 

scanf("%f , %f , %f, %f, %f", &s1, &s2, &s3, &s4, &s5); 

printf("\nThe score in reverse order are: "); 

printf("%10.2f%10.2f %10.2f %10.2f %10.2f \n", s5,s4,s3,s2,s1); 

}

定义一维数组的格式:

类型说明 数组名[整型常量表达式]

例如:int a[100];定义了一个数组a,元素个数为100,数组元素类型为整型。

说明:1.数组名:按标识符规则。本例a就是数组名。

2.整型常量表达式:表示数组元素个数(数组的长度)。可以是整型常量或符号常量,不允许用变量。

整型常量表达式在说明数组元素个数的同时也确定了数组元素下标的范围,下标从0开始~整型常量表达式-1(注意不是1~整型常量表达式)。C语言不检查数组下标越界,但是使用时,一般不能越界使用,否则结果难以预料(覆盖程序区-程序飞出,覆盖数据区-数据覆盖破坏,操作系统被破坏,系统崩溃)。

本例数组元素个数是100个,下标从0-99。

3.类型说明:指的是数据元素的类型,可以是基本数据类型,也可以是构造数据类型。类型说明确定了每个数据占用的内存字节数。比如整型2字节,实型4字节,双精度8字节,字符1字节。

本例数组元素是整型,每个元素占2个字节,因为有100个数组元素,所以占用200字节。

4.编译程序为数组分配了一片连续的空间。

C语言还规定,数组名是数组的首地址。即a=&a[0]

一维数组的初始化:

数组可以在定义时初始化,给数组元素赋初值。

数组初始化常见的几种形式:

1.对数组所有元素赋初值,此时数组定义中数组长度可以省略。

例如:int a[5]={1,2,3,4,5};或int a[]={1,2,3,4,5};

2.对数组部分元素赋初值,此时数组长度不能省略。

例如:int a[5]={1,2};

a[0]=1,a[1]=2,其余元素为编译系统指定的默认值0。

3.对数组的所有元素赋初值0。

例如:int a[5]={0};

注意:如果不进行初始化,如定义int a[5];那么数组元素的值是随机的,不要指望编译系统为你设置为默认值0。

数组元素的引用

数组元素的引用形式:数组名[下标]

注意:数组元素引用时,下标为整型的表达式,可以使用变量。

具体知识点3:一维数组的应用 [30分钟]

案例讲解:

【案例6.2】用数组完成案例6.1。

编程分析:引用数组处理每个学生的成绩。程序如下:

main()

{ int i; 

float score[5]; /*定义有5个

组合三位数c语言第八周,C语言教案-第八周教学提纲.doc相关推荐

  1. 1148: 组合三位数之一 C语言

    1148: 组合三位数之一 时间限制: 1 Sec 内存限制: 128 MB 提交: 4056 解决: 2880 [状态] [讨论版] [提交] [命题人:admin] 题目描述 把1.2.3.4.5 ...

  2. 详细代码注释1148: 组合三位数之一

    题目描述 48: 组合三位数之一 时间限制: 1 Sec 内存限制: 128 MB 提交: 5197 解决: 3705 把1.2.3.4.5.6.7.8.9组合成3个3位数,要求每个数字仅使用一次,使 ...

  3. zzulioj1148: 组合三位数之一

    1148: 组合三位数之一 题目描述 把1.2.3.4.5.6.7.8.9组合成3个3位数,要求每个数字仅使用一次,使每个3位数均为完全平方数.按从小到大的顺序输出这三个三位数. 输入 无 输出 按从 ...

  4. C语言数组练习-组合三位数

    要求:将0到9这十个数字分成三个3位数,要求第一个3位数,正好是第二个3位数的1/2,是第三个3位数的1/3.问应当怎样分,编写程序实现. #声明:本代码思路较为简单,但书写复杂请酌情参考. ---- ...

  5. ZZULIOJ 1149: 组合三位数之二

    题目描述 把1,2,3,4,5,6,7,8,9,组成三个三位数(每个数只能用一次),第二个数是第一个数的2倍,第三个数是第一个数的3倍,这三个三位数各是多少?答案可能有很多组,请按第一个数的升序顺序输 ...

  6. ZZULIOJ 1148: 组合三位数之一

    题目描述 把1.2.3.4.5.6.7.8.9组合成3个3位数,要求每个数字仅使用一次,使每个3位数均为完全平方数.按从小到大的顺序输出这三个三位数. 输入 无 输出 按从小到大的顺序输出这三个三位数 ...

  7. c语言随机三位数,【分享代码】弥补c语言随机数不足

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 // Rand 3 //10的poa次方 int poww(int poa) { int poi, gett = 1; if (poa == 0) ret ...

  8. C语言编程>第一周 ⑥ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

    例题:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个"水仙花数",因为153等于 ...

  9. 7-88 组合成最小的三位数

    7-88 组合成最小的三位数 输入一个三位数的正整数,将数字位置重新排列,组成一个尽可小的三位数. 输入格式: 输入一个三位的正整数. 输出格式: 输出组合之后最小的三位值正整数. 输入样例: 315 ...

最新文章

  1. 视觉SLAM中PNP求解
  2. R语言jitter函数为数据添加噪声(noise)扰动信息实战
  3. 网页制作基础:各种元素解析
  4. python文本分类特征选择_文本挖掘之特征选择(python 实现)
  5. wpf 加载html页面,使用MVVM在WPF中显示HTML
  6. html页面获取关闭页面事件,html页面关闭事件
  7. H264—MP4格式及在MP4文件中提取H264的SPS、PPS及码流
  8. 什么情况下不应该使用深度学习?
  9. 极客大学架构师训练营 系统架构 淘宝架构 第四次作业
  10. 利用爬虫来制作一个翻译小软件
  11. 深入创新,共建原生 | 「DaoCloud 道客」与华钦科技签署合作备忘录
  12. 抖音算法机制,抖音算法规则,抖音算法逻辑
  13. 基于属性的访问控制(ABAC)定义与思考 ——ABAC的基本概念
  14. 深入理解C++中的循环引用问题及解决方法
  15. 停招!MSRA,被曝停招国防七子及北邮学生!!
  16. 串行同步通讯-I2C
  17. Android应用统计-使用时长及次数统计(一)
  18. 计算机应用基础模拟试卷六,2020年9月网络教育统考计算机应用基础模拟题试卷6...
  19. PHP在线音乐播放分享程序源码
  20. 集团财务分析BI项目中的财务系统环境

热门文章

  1. 手机备忘录便签怎么转换成文件发出
  2. 陈鸽:正统或异端_异端:数字人包装
  3. 点灯科技ESP32库——Arduino端程序开发入门笔记(二)远程点灯
  4. 贪心NLP——jieba分词、停用词过滤、词的标准化,词袋模型
  5. 华为nova7pro的计算机,华为nova7与nova7pro的区别
  6. 日本研发最新美女机器人,内部结构公开,能做任何你想做的事情!
  7. 合并C#的控件tableLayoutPanel中的行和列
  8. Excel怎么提取相同背景颜色数据
  9. 一个木函软件测试计划书,创建一个名为Rational的类,进行分数运算。编写一个程序测试该类。要求使用C++语言...
  10. 俄罗斯总统确认支持自由软件