数组字符串精讲PPT课件_第1页
数组字符串精讲PPT课件_第2页
数组字符串精讲PPT课件_第3页
数组字符串精讲PPT课件_第4页
数组字符串精讲PPT课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、 同类型变量或对象的集合称为数组。 定义:类型名 数组名元素个数 元素个数必须是常数或常量表达式; 数组下标取值从0开始,使用数组时下标不能越界; 同一数组的所有数组元素在内存中占用一片连续的存储单元。 引用:数组名下标 下标可以是任何值为整型的表达式,可以包含变量和函数调用; 下标值应在数组定义的下标值范围内。第1页/共36页 例3.1斐波那契数列指的是这样一个数列:0、1、1、2、3、5、8、13、21、求数列的前20项并按从大到小的顺序输出。第2页/共36页 初始化:在定义一个一维数组的同时,可以给数组中的元素赋初值。 格式:类型名 数组名常量表达式=值1,值2, 例如: int a10

2、=0,1,2,3,4,5,6,7,8,9 相当于:a0=0;a1=1;a2=2;a9=9第3页/共36页 例3.2 输入年、月、日,输出该天是这一年的第几天。为什么多了一个0?第4页/共36页 例3.3 下面两个程序没有初始化数组,观察程序默认的数组变量初值。 如果数组定义放在int main()之内,其初始值是随机的。第5页/共36页 例3.4 写出下面程序的运行结果。 当给数组的部分元素赋初值后,其他元素的初值自动赋0值。第6页/共36页 可以使用memset函数给数组变量赋初值。 需要#include 头文件第7页/共36页 排序:选择排序、冒泡排序、插入排序、计数排序、快排序 例3.5

3、 输入n个数,将n个数按从小到大的顺序输出(n=1000)第8页/共36页 例3.6 输入n个数,存入数组a中,每一个数都是介于0到k之间的整数,此处k为某个整数(n=100000,k=1000),按从小到大的顺序输出a数组的数据。第9页/共36页 利用C+自带的库函数进行排序 需要include 头文件 格式:sort(first,last,comp),first是待排序数组的开始地址,last是结束地址,是一个左闭右开区间,即first,last),comp函数是数组中元素先后次序的判断依据。第10页/共36页 例3.7 从键盘读入10个数,然后从小到大输出。第11页/共36页 例3.8

4、从键盘读入10个数,然后从大到小输出。第12页/共36页 例3.9 成绩排序。给出班里某门课程的成绩单,请你按成绩从高到低对成绩单排序输出,如果有相同分数则名字字典序小的在前。 输入格式:第一行为n (0 n temp)的功能是循环读入数据,在读不到的时候停止循环。 字符串如何连接?用“+”连接两个字符串。注意:两个字符串常量是不能用“+”连接的。例:string s=“abc”+“def”;第27页/共36页 例3.17 统计数字字符个数。输入1行字符,统计出其中数字字符的个数。 输入格式:1行字符串,总长度不超过255。 输出格式:输出为1行,输出字符串里面数字字符的个数。 输入样例:Pe

5、king University is set up at 1898. 输出样例:4第28页/共36页 分析 读入1行字符放入一个字符串变量,再判断每个字符是否是数字。 如果输入的1行字符串中有空格,可以用getline函数读入,getline函数默认是碰到换行符才结束。第29页/共36页 string类型的成员函数: 成员函数是指某个类型的特有函数; 成员函数调用方式是:变量名.函数名(参数)。格 式说 明size()求字符串长度substr(开始位置i,子串长度len)取字符串的子串,当i+len超过原字符串长度时,只取剩下的。insert(插入位置i,插入字符串s)在字符串的第i个位置插入

6、serase(开始位置i,删除长度len)删除字符串的第i个位置后的len个字符replace(开始位置i,长度len,要换上的字符串ss)用字符串ss替换字符串中i开始长度是len的一段find(子串subs)查找子串subs第1次出现的位置第30页/共36页 例3.18 选择你喜爱的水果。程序中保存了七种水果的名字,要求用户输入一个与水果有关的句子。程序在已存储的水果名字中搜索,以判断句子中是否包含七种水果的名称。如果包含,则用词组“Brussels sprouts”替换句子中出现的水果单词,并输出替换后的句子。如果句子中没有出现这些水果的名字,则输出“You must not enjoy

7、 fruit.”。假设七种水果的名字为:apples,bananas,peaches,cherries,pears,oranges,strawberries。 输入格式:有多行,每行是一个字符串(长度不超过200)。每行输入中只会有一个水果名称,不会存在1行输入包含多种水果名称或重复水果名称的情况。 输出格式:如果包含水果单词,则用词组“Brussels sprouts”替换句子中出现的水果单词,并输出替换后的句子。如果句子中没有出现这些水果的名字,则输出“You must not enjoy fruit.”。第31页/共36页 输入样例:I really love peaches on my cereal.Id rather have a candy barapples are wonderful with lunch 输出样例:I really love Brussels sprouts on my cereal.You must not enjoy fruit.Brussels sprouts are wonderful with lunch第32页/共36页第33页/共36页 例3.19 提取整数。有1行由小写字母和数字组成的字符串,请求出其中所有数

温馨提示

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

评论

0/150

提交评论