- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
n10-guo-数组
Zhuhai, 2011 GUO Sumei C语言程序设计 郭 素梅 GUO Sumei 循环练习: 从键盘输入若干个学生的成绩,统计并输出最高、最低和平均成绩,当输入负数时结束输入,用do-while语句实现。 循环练习: 输出1~1000之间能被11整除且个位数为5的所有整数,用for语句实现。 顺序/选择/循环结构程序综合例 编写程序:统计从键盘输入一行中的数字个数z, \t、\n和空白数y,其他文字数x,并输出。 先看输入: 没有提出输入多少个字母,循环次数是不定,该如何设计输入和判断条件呢? getchar() 和 scanf(“%c”) 仅仅能输入一个字母 while(???) for(??? ; ??? ; ???) 再看统计部分:三个分支。 利用switch语句设计三个分支,统计数字、空格等和其他输入字符的个数。 利用关系、逻辑运算符和if语句设计三个分支。 举例 从键盘输入10个学生的成绩,统计并输出平均成绩。 循环不能解决的 从键盘输入10个学生的成绩,统计并输出平均成绩、高于等于平均成绩的人数、低于平均成绩的人数。 数组与字符串 数组 任何数据: 定义 初始化 引用 一维数组 定义:数据类型 标识符[长度]; 数组 定义:数据类型 标识符[长度]; 说明:方括号 [] 长度: 必须为正整数, 或常量表达式 不能利用动态 int a[2*3]; n=10; int a[n]; 数组 引用: 先定义后使用 逐一引用 通过数组名和下标(下标不能超过定义的长度范围) 比如:int a[10]; 定义了一个长度10的整型数组a,其下标范围0到9 a[0], a[1], ..., a[9]为a的所有元素 一维数组 说明 下标表示了元素在数组中的位置 下标可以用表达式表示a[2*3] 相当于a[6] 下标不能超过定义的长度范围 和变量相同的点: 使用前要定义 不赋初值其值不确定 数组的引用 利用下标: x[0], x[1], x[2] t = x[2]; t = x[0] - x[1]; 引用时的下标: 范围:0到长度减1。 int a[10]; 下标0到9 可以是任意整型表达式:i=3;y=x[i*3]; 注意 数组必须: 数据类型相同 成员个数有限 排列有序 下标从零开始,不得超过其定义的长度 使用前要定义,不赋值其值不定 逐一引用 数组初始化:定义时用 { , , } 进行所有元素的初始化int a[4]={3, 2, 1, 0}; 进行部分元素的初始化int a[4]={3, 2};按顺序赋值。意味着a[0]=3; a[1]=2;而a[2], a[3] 自动为0 初值的个数不能超过定义的数组长度 从 0 开始 数组的存储 基本运算符:sizeof sizeof(数据类型) 数据类型所占的字节数 sizeof(int) sizeof(char) sizeof(double) 基本运算符:sizeof sizeof(数据) 数据所占的字节数 int ix[10], iy; double dx[10]; 实例分析 实例分析 实例分析 从键盘输入个人所得,当输入负数时结束输入。统计并输出平均所得,计算并输出Gini系数。 意大利的统计学者Gini发明,是所得分配的不平等的指标:0完全平等、1.0完全不平等(一人占有所有)、0.4社会骚乱多发警戒值 实例分析 所有值a[i]的差值绝对值的平均subAve=∑(a[i]-a[j]) i!=j 所有值的平均allAve=∑a[i] Gini=subAve/(allAve*2); 循环、数组练习: 从键盘输入若干个学生的成绩,输入负数结束输入。 统计并输出最高成绩和最低成绩,平均成绩,以及高于等于平均成绩的人数。 实例分析 实例分析 课题:有一个数组,内有10个数,求出最小的数和它的下标,然后将它与数组中的第一个数对换。 int a[10]; a[0] a[i] a[9] 定义两个临时变量 min(保存最小数)和 k(保存下标)。 先假定第一个元素就是最小的:min=a[0],k=0。 思 路 用min与数组中的每一个元素a[i]比较, 若a[i]比min小, 将a[i]赋给min, 将下标i赋给k, 否则,继续比较。 65 12 53 7 26 20 68 3 13 1 课题:有一个数组,内有10个数,求出最小的数和它的下标,然后将它与数组中的第一个数对换。 输入数据a i = 1; k=i; min=a[k]; min a[i] i10 i++ k=0; min=a[k]; a[k] = a[0]; a[0] = min; 输出a 思考:如果数组里最小的
您可能关注的文档
- Module 1 Wonders of the world 导学案 (学生版).doc
- Module 3 Section Four Cultural Corner (课件2).pptx
- Module 5 A Trip Along the Three Gorges课件 ( 外研版必修4).ppt
- Module 4 Sandstorms in Asia-Introduction and reading 课件 (外研版必修3).ppt
- Module 6 Animals in Danger必修5.ppt
- Module 6 The Internet and Telecommunications》Grammar 1.ppt
- module 7 8的重点单词、词组.doc
- Module1 My first day at senior high 高三复习知识点.ppt
- Module1-Unit1课件,2014秋九年级上英语(新标准).ppt
- Module1-Unit4-Earthquakes-词汇课PPT.ppt
最近下载
- 爱护我们的人民币.ppt VIP
- GJB9001C:2017质量保证大纲.doc VIP
- 可用性人因设计研究报告 .pdf VIP
- 设计概论讲课课件(第三版杨晓琪).pptx VIP
- 西师版六年级数学教案(上学期)全册教学案.pdf VIP
- 1.1+坚持改革开放(课件)-2025-2026学年九年级道德与法治上册(统编版).pptx VIP
- 2025-2026学年初中数学人教版2024八年级上册-人教版2024教学设计合集.docx
- 征信简版电子版PDF个人信用报告最新版2024年可编辑带水印模板.pdf VIP
- 创新创业基础(高职高专版)PPT教学完整课件.ppt
- 人教版小学六年级数学上册全册教案 -(最全).doc VIP
文档评论(0)