盘算机本科C措辞第七章讲稿[宝典.ppt_第1页
盘算机本科C措辞第七章讲稿[宝典.ppt_第2页
盘算机本科C措辞第七章讲稿[宝典.ppt_第3页
盘算机本科C措辞第七章讲稿[宝典.ppt_第4页
盘算机本科C措辞第七章讲稿[宝典.ppt_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第七章 数组 学习目的: 1、理解数组元素与普通变量的区 别 2、掌握数组的地址 3、掌握数组的存储 4、掌握数组的初始化 徊 宁 汲 甘 赚 企 腐 天 缮 剩 诅 蓖 肝 昭 感 固 炒 注 筐 牟 误 掘 扑 殉 首 诈 蚜 滋 钉 物 恒 肝 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 第一节 数组的概念 在处理实际问题时,常要处理同一类型 的成批数据(如100个学生的成绩)。可以 把这批数据看作一个有机的整体,称为数组 ,用一个统一的名字代表这批数据,而用序 号或下标来区分各个数据。 例如:用s代表学生成绩这组数据,s是 数组名,用s1、s2、s3分别代表学生1、学生2 、学生3的成绩,s右下角的数字1、2、3用 来表示该数据在数中的序号,称为下标。数 组中的数据称为数据元素。 荧 稀 夺 离 蕴 韩 帘 蚤 慑 逸 漂 涉 感 伊 册 驭 鼠 兹 曙 饼 动 仿 瞅 昌 怠 酚 易 斟 莽 限 楔 投 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 概括地说:数组是有序数据的集合,要 寻找一个数组中的某一个元素必须给出两个 要素:数组名和下标。 注意: 1 数组是有类型属性的 2 同一数组中的每一个元素都必须属于 同一数据类型 3 一个数组中内存中占一片连续的存储 单元 于 拈 华 垢 蓝 恶 忘 匀 交 弗 涂 传 胃 蜜 锭 康 趟 裙 氦 昌 舰 史 蚁 叼 盘 书 牙 抡 呐 挨 熔 陈 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 int k10; 由于在程序中无法 用下角表示下标, 因此C中用方括号 来表示下标。 如k0、k1、k2在C中 分别用k0、k1、k2 来表示。 k0 k1 k2 k3 k4 k5 k6 k7 k8 k9 1000 1002 1004 1006 1008 1010 1012 1014 1016 1018 输 春 秩 胜 珠 严 细 忘 钎 芽 猎 迹 扶 醛 迭 迂 咨 痴 昔 庶 如 撞 漂 寐 汤 敞 诀 太 扩 肠 凶 札 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 一、一维数组的定义与引用 1 定义一组数组 类型标识符 数组名常量表达式; 例如:lot s10; 它表示数组名为s,此数组为实型,有10个元素。 说明:数组名定名规则和变量名相同 用方括号括起来的常量表达式表示下标值 int 10; int s2*8; #deine N 20 int rryN*2; 第二节 一维数组 寅 痘 拒 毒 狗 蹄 沈 汉 窜 炽 蕾 灸 爪 务 阿 俱 湛 旷 金 敏 涣 刨 如 暂 垫 札 拍 崭 顷 唤 咏 坏 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 常量表达式的值表示元素的个数,即数组长度。 int 10;表示有10个元素,这10个元素是:0、 1、9。 常量表达式中可以包括常量、符号常量,但不能包含 变量。也就是说,C不允许对数组的大小作动态定义, 即数组的大小不依赖于程序运行过程中变量的值。 int k; scn(“%d”, int sk; 英 峡 侣 蘸 洞 困 碴 味 东 袒 趁 酚 慨 秸 撇 剥 部 藤 肿 蛾 修 芽 煮 缝 哀 甸 恰 笛 逊 绽 蹦 厅 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 注意点: 1)在表示数组元素时下标可以是正整数或整 型变量或整型表达式 for (t=0;t min() int 11,n,j,temp; or (n=1;nj+1) temp=j;j=j+1;j+1=temp; or (n=1;n min() int 34,t,k; or (t=0;t min() int 333,t,k,i; or (t=0;t min() int row,colum,mx,34,m,n; or (m=0;mmx) mx=mn;row=m;colum=n; print(“mx is %4dnrow is %dncolum is %dn”, mx,row,colum); 赂 柑 讶 燎 墅 萄 贾 刷 鱼 龟 剧 券 垛 轻 葱 渴 闻 瓮 猿 堡 辰 倒 仑 喻 褐 草 燕 揍 骚 籍 宴 集 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 第四节第四节 字符型数组与字符串字符型数组与字符串 用来存放字符数据的数组称为字符数组,用来存放字符数据的数组称为字符数组, 字符数组中的一个元素存放一个字符。字符数组中的一个元素存放一个字符。字符数字符数 组具组具 有数组的共同属性。有数组的共同属性。由于字符应用广泛,由于字符应用广泛,C C 为它提供了许多方便用法和函数,因此专门介为它提供了许多方便用法和函数,因此专门介 绍字符串和字符数组。绍字符串和字符数组。 一、字符型数组的定义与初始化与其它数组一、字符型数组的定义与初始化与其它数组 是类似的。是类似的。 定义定义: char a15;: char a15; char a210; char a210; 蛙 于 笆 希 泡 匿 哇 擦 暂 筛 袍 鸟 甜 俐 恨 饯 仓 壕 姐 素 主 苟 奶 樟 平 纂 好 潍 矗 园 办 昔 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 字符数组初始化的方法字符数组初始化的方法 char c=I, ,a,m, char c=I, ,a,m, ,h,a,p,p,y;,h,a,p,p,y; C0C0 C1C1 C2C2 C3C3 C4C4 C5C5 C6C6 C7C7 C8C8 C9C9 I I a a mm h h a a p p p p y y 737332329797109109 3232104104 9797112112 112112 121121 在中chr型数组的每个元素所对应的存 储空间都是一字节,因此字符型数组的每个 元素都可以存放一个字符。 奥 槽 恃 婉 琶 播 宵 此 找 冒 脾 暗 吼 疟 僚 食 遣 熔 游 绅 姿 甥 踢 侧 纽 向 羡 羹 斤 卷 种 喇 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 语言中有字符串常量,在中对字符串语言中有字符串常量,在中对字符串 的处理是使用字符数组来进行的。的处理是使用字符数组来进行的。 char c=“I am happy”; char c=“I am happy”; C0C0 C1C1 C2C2 C3C3 C4C4 C5C5 C6C6 C7C7 C8C8 C9C9 C10C10 I I a a mm h h a a p p p p y y 00 737332329797109109 3232104104 9797112112 112112 121121 0 0 字符数组中的每个元素都对应着字符串中的一个字符;此外应 注意字符串未尾有一个空操作符。 枪 西 系 粹 蚀 衰 攘 讨 羞 酪 羚 醛 骏 扬 郁 防 坐 顺 邀 单 履 周 佐 唇 惧 奖 疥 田 蔬 逆 亢 详 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 char a=“I am a student” char a=“I am a student”; 或或 char a= “I am a student”;char a= “I am a student”; 在程序的执行部分,不允许把字符串直接赋在程序的执行部分,不允许把字符串直接赋 给给 一个字符数组名和该数组中的任何元素,如一个字符数组名和该数组中的任何元素,如 下下 面是错误面是错误: : char a10;char a10; a=“abc”;a=“abc”; a8=“abc”;a8=“abc”; 纪 石 剧 按 芝 价 炕 椒 渊 聋 氏 梧 携 肪 涎 漂 盗 豫 详 组 浑 掖 箔 田 肃 葫 卷 诡 烃 匠 柒 浪 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 二、字符的输入二、字符的输入 用scanf()函数输入字符或字符串。 例: char str9; int k; for (k=0;k#include #include #include main()main() char a7=“abcdef”;char a7=“abcdef”; char b4=“abc”; char b4=“abc”; strcpy(a,b); strcpy(a,b); printf(“%cn”,a5);printf(“%cn”,a5); printf(“%s”,a); printf(“%s”,a); 潘 展 傣 燥 勘 螟 笑 惟 臆 搏 稠 伶 伺 梨 证 勒 滤 遮 雌 根 茶 祝 冷 彬 赡 和 伤 输 辈 其 貌 衣 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 例14 若有以下定义和语句: chr s1=“12345“,s2=“1234“; print(“%dn“,strlen(strcpy(s1,s2); 则输出结果是_ 例15 以下程序片段的输出是_。 print(“%dn“,strlen(“TSn123“); 甥 乍 翼 耸 馋 犹 憨 闺 攫 恶 氧 雾 剂 黑 闷 质 瘪 跌 语 喷 诫 洪 喜 友 假 碘 桐 兼 腑 我 譬 诌 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 例子例子1616 以下程序输出的结果是以下程序输出的结果是_ #include #include #include #include main( )main( ) char char w10=“ABCD”,”EFGH”,”IJKL”,”MNOP”;w10=“ABCD”,”EFGH”,”IJKL”,”MNOP”; int k; int k; for (k=1;k#include main( )main( ) char ch7=“65ab21”;char ch7=“65ab21”; int k,s=0; int k,s=0; for for (k=0;chk=0 chr string20; int t; or (t=0;t0) strcpy(string,str0); else strcpy(string,str1); i (strcmp(str2,string)0) strcpy(string,str2); 帐 狼 纸 佑 磺 磨 升 艾 骆 剪 汉 铁 婆 涕 并 犯 沿 蚜 瓮 啤 藤 靠 乒 扯 窜 差 夕 类 吞 艺 黔 录 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 例子19 输入3个字符串,要求将字母按由小到大 的顺序输出。 #include #include min() chr str320; chr string20; int t; or (t=0;t0) strcpy(string,str0); strcpy(str0,str1); strcpy(str1,string); 烷 绑 限 览 谱 痈 懈 酿 胞 搪 嘘 陇 湛 苦 阎 旋 傍 类 存 泥 踞 琶 稻 吹 伴 凸 淆 果 箭 仗 诲 谬 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 i(strcmp(str0,str2)0) strcpy(string,str0); strcpy(str0,str2); strcpy(str2,string); i(strcmp(str1,str2)0) strcpy(string,str1); strcpy(str1,str2); strcpy(str2,string); or (t=0;t=2;t+) puts(strt); 析 贵 扬 凸 陇 赚 躬 攒 腐 失 颜 罚 怂 粳 啸 儡 氛 鹊 哺 勘 蓖 需 撰 坛 簿 含 睬 党 潭 放 论 虑 计 算 机 本 科 C 语 言 第 七 章 讲 稿 计 算 机 本 科 C 语 言 第 七 章 讲 稿 总结 1 1 数组是具有相同类型的值的集合,数组数组是具有相同类型的值的集合,数组 名是数组所有元素的代表,可以通过数组名是数组所有元素的代表,可以通过数组 名加下标的方式来访问数组的每一个元素名加下标的方式来访问数组的每一个元素 ,数组的下标从,数组的下标从0 0开始。数组元素在内存占开始。数组元素在内存占 用连续的空间,数组名是这个空间的首地用连续的空间,数组名是这个空间的首地 址。多维数组的所有元素在内存也是线性址。多维数组的所有元素在内存也是线性 存放。存放。 2 2 数组元素的遍历可以通过数组元素的遍历可以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论