- 5
- 0
- 约6.99千字
- 约 40页
- 2019-05-14 发布于广东
- 举报
C语言程序设计—进阶篇 第6章 数组(2) 内容概述 1.二维数组的定义、初始化、在计算机中的存储及其使用方法。 2.字符串的输入输出操作及常用的字符串操作函数。 3.一维数组的应用,包括排序、查找、单词统计、求子串等,二维数组的应用。 教学目标 1.掌握二维数组的定义、初始化及其使用方法。 2.了解二维数组在计算机中的存储结构并对数据进行存储和管理。 3.掌握字符串的输入输出方法,熟悉常用的字符串操作函数。 4.学会使用数组解决实际问题的基本方法,能用一维数组和二维数组解决简单的实际问题。 在一维线性内存空间中,如何在一维存储器中存放二维数组?一种是按行排列, 即放完一行之后顺次放入第二行。另一种是按列排列, 即放完一列之后再顺次放入第二列。在C语言中,二维数组是按行排列的。 上例中先存放a[0]行,再存放a[1]行,最后存放a[2]行。 6.1.2 二维数组元素的引用 二维数组的元素也称为双下标变量,其表示的形式为: 数组名[下标][下标] 其中下标应为整型常量或整型表达式。 【例6.1】一个学习小组有5个人,每个人有三门课的考试成绩。求全组分科的平均成绩和各科总平均成绩。 main() { int i,j,s=0,average,v[3],a[5][3]; printf(input score\n); for(i=0;i3;i++) { for(j=0;j5;j++) { scanf(%d,a[j][i]); s=s+a[j][i]; } v[i]=s/5; s=0; } average =(v[0]+v[1]+v[2])/3; printf(math:%d\nc languag:%d\ndbase:%d\n,v[0],v[1],v[2]); printf(total:%d\n, average ); } 6.1.3 二维数组的初始化 (1)按行分段赋值可写为: int a[5][3]={ {80,75,92},{61,65,71}, {59,63,70},{85,87,90},{76,77,85} }; (2)按行连续赋值可写为: int a[5][3]={ 80,75,92,61,65,71, 59,63,70,85,87,90,76,77,85}; 这两种赋初值的结果是完全相同的。 【例6.2】 main() { int i,j,s=0, average,v[3]; int a[5][3]={{80,75,92},{61,65,71}, {59,63,70},{85,87,90},{76,77,85}}; for(i=0;i3;i++) { for(j=0;j5;j++) s=s+a[j][i]; v[i]=s/5; s=0; } average=(v[0]+v[1]+v[2])/3; printf(math:%d\nc languag:%d\ndFoxpro:%d\n, v[0],v[1],v[2]); printf(total:%d\n, average); } 对于二维数组初始化赋值还有以下说明: (1)可以只对部分元素赋初值,未赋初值的元素自动取0值。 例如: int a[3][3]={{1},{2},{3}}; (2)如对全部元素赋初值,则第一维的长度可以不给出。 例如: int a[3][3]={1,2,3,4,5,6,7,8,9}; 可以写为: int a[][3]={1,2,3,4,5,6,7,8,9}; (3)数组是一种构造类型的数据 6.2.1 字符数组的定义 用来存放字符量的数组称为字符数组。形式与前面介绍的数值型数组相同。例如: char c[10]; 由于字符型和整型通用,也可以定义为int c[10]但这时每个数组元素占2个字节的内存单元。 字符数组也可以是二维或多维数组。例如: char c[5][10]; 即为二维字符数组。 6.2.2 字符数组的初始化 字符数组也允许在定义时作初始化赋值。例如: char c[10]={‘c’, ‘ ’, ‘p’, ‘r’, ‘o’, ‘g’, ‘r’, ‘a’,’m’}; 赋值后各元素的值为: c[0]的值为‘c’ c[1]的值为‘ ’ c[2]的值为‘p’ c[3]的值为‘r’ c[4]的值为‘0’ c[5]的值为
您可能关注的文档
- 苏州大学计算机科学与技术学院计算机通信与网络课件第二章 物理层(3).ppt
- 苏州大学计算机科学与技术学院计算机通信与网络课件第二章 物理层(4).ppt
- 苏州大学计算机科学与技术学院计算机通信与网络课件第二章 物理层(5).ppt
- 苏州大学计算机科学与技术学院计算机通信与网络课件第二章 物理层(6).ppt
- 苏州大学计算机科学与技术学院计算机通信与网络课件第二章 物理层(7).ppt
- 苏州大学计算机科学与技术学院计算机通信与网络课件第二章 物理层(8).ppt
- 苏州大学计算机科学与技术学院计算机通信与网络课件第二章 物理层(9).ppt
- 苏州大学计算机科学与技术学院计算机通信与网络课件第二章 物理层(10).ppt
- 苏州大学计算机科学与技术学院计算机通信与网络课件第六章 应用层(1).ppt
- 苏州大学计算机科学与技术学院计算机通信与网络课件第六章 应用层(2).ppt
最近下载
- 新版冀教版科学四年级上册期末试卷(5套).pdf VIP
- 人行悬索桥专项施工方案(论证).pdf VIP
- 你是在高三如何最大幅度提分?——from知乎:铁匠qwer(提分150+).pdf VIP
- 标准图集-17J008 挡土墙(重力式、衡重式、悬臂式) -抗震烈度7.pdf VIP
- 浙江省宁波市余姚市2024-2025学年三年级上学期期末语文试卷.docx VIP
- 电土施表13.3-12 地漏及地面清扫口排水试验记录.doc VIP
- 工商业储能商业模式探索_储能PPT - 副本.pptx VIP
- 数据库原理及应用教程(MySQL版)全套教学课件.pptx VIP
- 医学课件-会厌囊肿护理查房.pptx VIP
- CATL安全作业试题及答案.doc
原创力文档

文档评论(0)