c语言第4章

时间:2025-04-04

c语言

1

第4章

数 组刘培华烟台大学 计算机学院

c语言

作业与实验实验 p1401.

2

实验7: 实验7:

作业1.

习题:p136 习题:p136 一、 二、 三、 四、 2、网上提交: p139 网上提交: 五 ( 1、 3、 5、 7)2010-12-22

c语言

第4章 数组

3

本章重点介绍 :4.1 一维数组 4.2 二维数组 4.3 字符数组与字符串2010-12-22

c语言

第4章 数组

4

如何解决下面的问题? 如何解决下面的问题?

成绩高于平均分的人数? 成绩高于平均分的人数?应该注意的问题: 应该注意的问题:1. 2. 3.

定义多少个变量? 定义多少个变量? 计算一门课的平均成绩并统计 采用哪种程序结构? 采用哪种程序结构?

如何接收并保存多个成绩? 如何接收并保存多个成绩? 如何计算平均分? 如何计算平均分? 如何统计人数? 如何统计人数?2010-12-22

c语言

5

程序超过300行 程序超过300行, 300 main() 重复严重, 重复严重,但 { 无法用循环结 float score1,score2,......score140,average,number; 构。printf(“Please input the score of student:”); scanf(“%f”,&score1); printf(“Please input the score of student:”); scanf(“%f”,&score2); ...... printf(“Please input the score of student:”); scanf(“%f”,&score140); ...... }2010-12-22

c语言

数组是由相同的数据类型按照一定顺序排列的 一组变量的集合。 一组变量的集合。 是一种构造数据类型。 是一种构造数据类型。 其中的数据可以是基本类型 int,flaot,char, (int,flaot,char,…)、指针类型和结构类 型等。 型等。 其中的数组元素通过下标来引用。 其中的数组元素通过下标来引用。 适用于处理大量同类型数据。 适用于处理大量同类型数据。 占用内存中连续的存储单元。 占用内存中连续的存储单元。

6

2010-12-22

c语言

4.1 一维数组4.1.1 一维数组的定义 数组名[常量表达式 常量表达式]; 数据类型 数组名 常量表达式例如: 例如: int a[10]; float score[5]; score[5]; “数据类型”: 是数组元素的数据类型。 数据类型” 是数组元素的数据类型。 “数组名”: 数组名”: 遵循C语言标识符规则 标识符规则。 遵循C语言标识符规则。 常量表达式” 表示数组中有多少个元素, “常量表达式”:表示数组中有多少个元素,即数 组的长度。它可以是整型常量、 组的长度。它可以是整型常量、整型常量表达式 或符号常量。 或符号常量。

7

2010-12-22

c语言

4.1.1 一维数组的定义(续) 一维数组的定义(以下数组定义是正确的: 以下数组定义是正确的: #define N 10 …… float score1[N], score2[N]; int num[10+N]; char c[26]; 以下数组定义是不正确的: 以下数组定义是不正确的: int array(10); int n; float score[n]; double b['a'.. 'd']; char str[ ];

8

2010-12-22

c语言

数组在内存的存放数组下

标从0开始。 数组下标从0开始。 一维数组的数组元素 低地址 在内存里按顺序存放。 按顺序存放 在内存里按顺序存放。 数组名代表数组的首 地址, score的值 地址,即score的值 与score[0] 的地址 值相同。 值相同。 高地址score数组

9

91.5 34.5 67.5 72.084.0

score[0] score[1] score[2] score[3] score[4]

2010-12-22

c语言

4.1.2 数组元素的引用格式: 格式:

10

数组名[下标表达式] 数组名[下标表达式]例如: 例如:输入学生成绩 for(i=0;i<5 for(i=0;i<5;i++) scanf( %f" &score[i]); scanf("%f",&score[i]); 例如:fib[n]=fib[n-1]+fib[n-2]; 例如:fib[n]=fib[n-1]+fib[n下标表达式的值必须是整型表达式。 下标表达式的值必须是整型表达式。 的值必须是整型表达式

2010-12-22

c语言

4.1.2 数组元素的引用(续) 数组元素的引用(说明: 说明:下标从0开始 下界为0), 开始( ),数组的最大下标 ① 下标从 开始(下界为 ),数组的最大下标 上界)是数组长度减1。 (上界)是数组长度减 。 例如: 例如: int a[10]; scanf ("%d",&a[10]); /* 下标越界 */ C编译系统不做越界检查,如果引用的数组元素 编译系统不做越界检查, 编译系统不做越界检查 超出数组范围会破坏其他变量的值。 超出数组范围会破坏其他变量的值。

11

2010-12-22

c语言

4.1.2 数组元素的引用(续) 数组元素的引用(② [ ]是下标运算符, 是下标运算符, 引用数组元素时, 引用数组元素时 数组元素 根据数组的首地址 根据数组的首地址 下标数 和下标数,计算出 该元素的实际地址, 该元素的实际地址, 取出该地址的内容 取出该地址的内容 进行操作。 进行操作。 如引用 score[2]: (1)计算 2000+2*4=2008 计算 (2)取出 取出2008的内容 取出 的内容 2000H 2004H 2008H 200CH 218CH 91.5 34.5 67.5 72.084.0score[0] score[1] score[2] score[3] score[4]

12

2010-12-22

c语言

13

#define N 140 main() { float score[N],average; int n,i; Please input score:73.5 average=0; for(i=0;i<N;i++) Please input score:97 { printf("Please input score:"); average=85.25 scanf("%f",&score[i]); average=average+score[i]; n=1 } average=average/N; n=0; for(i=0;i<N;i++) if (score[i]>average) n++; printf("average=%5.2f\nn=%d\n",average,n); }2010-12-22

c语言

4.1.3 一维数组的初始化初始化:在定义数组时给数组元素赋初 …… 此处隐藏:3580字,全部文档内容请下载后查看。喜欢就下载吧 ……

c语言第4章.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219