- 18
- 0
- 约 67页
- 2016-12-21 发布于重庆
- 举报
第6章 数组 内容提要 数组类型; 向函数传递一维数组和二维数组; 常用算法:排序、查找、求最大最小值等; 用字符数组存取字符串; 使用字符串处理函数处理字符串 数组的用处 保存大量同类型的相关数据 如矩阵运算,表格数据等 数组(Array) int a[10]; 定义一个有10个元素的数组,每个元素的类型均为int 使用a[0]、a[1]、a[2]、……、a[9]这样的形式访问每个元素。它们与普通变量没有任何区别 系统会在内存分配连续的10个int空间给此数组 数组下标可以是整型表达式 直接对a的访问,就是访问此数组的首地址 一维数组的定义 一维数组的初始化 数组的初始化 数组定义后的初值仍然是随机数,一般需要我们来初始化 int a[5] = { 12, 34, 56 ,78 ,9 }; int a[5]={ 0,0,0,0,0 };或int a[5] ={ 0 }; int a[] = { 11, 22, 33, 44, 55 }; 数组大小最好用宏来定义,以适应未来可能的变化 #define SIZE 10int a[SIZE]; 数组大小定义好后,将永远不变 二维数组的存储结构 二维数组的输入和输出 数组的使用 数组的下标都是从0开始 对数组每个元素的使用与普通变量无异 可以用任意表达式作为下标,动态决定访问哪个元素 for (i=0; iSIZE; i++) a[i] = 2 * i; 下标越界是大忌! 使用大于最大下标的下标,将访问数组以外的空间。那里的数据是未知的,可能带来严重后果 sizeof可以用来获得数组大小 一维数组的输入和输出 例6.1 兔子生崽问题 Fibonacci数列 1,2,3,5,8,13,21,34,55,89,144,233,… 例6.1 #include stdio.h #define YEAR_MONTH 12 main() { int f[YEAR_MONTH+1] = {0,1,2}; int month; for (month=3; month=YEAR_MONTH; month++) { f[month] = f[month-1] + f[month-2]; } for (month=1; month=YEAR_MONTH; month++) { printf(%d\t, f[month]); } printf(\nsum = %d\n, f[YEAR_MONTH]); } 一维数组程序举例 例:用数组来处理Fibonacci数列问题。 例6.2 —打印出最高分及其学生序号 从键盘输入学生人数n; 从键盘输入所有学生的学号和成绩分别存入数组num和score 假设其中的一个学生成绩为最高,同时记录其学号,即令 maxScore = score[0] maxNum = num[0]; 对所有学生成绩进行比较,即 for (i=0; in; i++) { 若score[i] maxScore, 则修改maxScore值为score[i], 并记录其学号maxNum = num[i]; } 打印最高分maxScore及其学号maxNum; #include stdio.h #define ARR_SIZE 40 main() { float score[ARR_SIZE], maxScore; int n, i; long maxNum, num[ARR_SIZE]; printf(Please enter total number:); scanf(%d, n); printf(Please enter the number and score:\n); for (i=0; in; i++) { scanf(%ld%f, num[i], score[i]); } maxScore = score[0]; maxNum = num[0]; for (i=1; in; i++) { if (score[i] maxScore) { maxScore = score[i]; maxNum = num[i]; } } printf(maxScore = %.0f, maxNu
您可能关注的文档
- 江苏省住宅物业管理服务标准2003版(DB32T5382002).doc
- 第4章电子商务安全..ppt
- 江苏省住院病历质量评定标准(2013版与2009版比较版).ppt
- 第4章桩基础..ppt
- 第4章流体动力学基础..ppt
- 第4章电解质溶液和离子平衡..ppt
- 江苏省公众多媒体网络扩容方案.doc
- 第4章电子表格软件Excel2010..pptx
- 第4章电路定理..ppt
- 江苏省公务员职业道德主题教育实践活动模拟试卷(二).doc
- 山西天一大联考2025-2026学年高二上学期期末学情监测语文试题(试卷+解析).docx
- 山西忻州部分学校2025-2026学年高一上学期2月质量检测数学试题(人教B版)(试卷+解析).docx
- 山西运城市2025-2026学年高二第一学期期末调研测试数学试题(试卷+解析).docx
- 陕西省榆林市榆阳区2025-2026学年八年级上学期期末地理试题(试卷+解析).docx
- 陕西西安市碑林区2025-2026学年度第一学期期末八年级生物试题(试卷+解析).docx
- 四川省广元市苍溪县2025-2026年八年级上学期期末道德与法治试题(试卷+解析).docx
- 江苏泰州市姜堰区2025-2026学年七年级上学期1月期末数学试题(试卷+解析).docx
- 江苏省扬州市邗江区2025-2026学年九年级上学期期末考试化学试题(试卷+解析).docx
- 江西上饶市铅山县2025-2026学年第一学期期末考试八年级数学试题(试卷+解析).docx
- 江苏扬州市高邮市2025-2026学年度第一学期期末学业质量监测试题九年级英语(试卷+解析).docx
原创力文档

文档评论(0)