高级语言程序设计(CC++版) 课件 第5章 数组.pptx

高级语言程序设计(CC++版) 课件 第5章 数组.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第5章数组;目录;为了方便存储和处理批量数据,提高程序设计的效率,通常把具有相同类型的批量元素按有序的形式组织起来,这些有序排列的同类数据元素的集合就称为数组,组成数组的各个变量就称为数组的元素。

数组明确地反映了数据间的联系,含义清晰且使用方便,将其与循环有机结合处理批量数据,有利于提高程序设计的效率,增强了程序的可读性。;1.一维数组(定义与引用);1.一维数组(初始化);例5.1:输入一个非负十进制整数,将其转换为二进制形式输出。

输入:一个非负整数n(0=n2^31)。

输出:对应的二进制形式。;例5.2:一个非递减有序的整型数组有n个元素,给定一个整数num,将num插入该序列的适当位置,使序列仍保持非递减有序。

输入:输入有三行。第一行是一个正整数n(n=1000)。第二行是n个整数,第三行是待插入整数num。

输出:输出非递减有序的n+1个整数,数据之间用空格隔开。输出占一行。;2.数组排序;例5.3:对一维数组按照从小到大的顺序排序。

输入:第一行输入一个整数n(1=n=100)表示数组有n个整数;第二行输入n个整数。

输出:对这n个整数按照从小到大的顺序输出,数据之间用一个空格隔开。;#includeiostream //解法2:冒泡排序

usingnamespacestd;

intmain()

{

intn,a[100],i,j,temp;

cinn;

for(i=0;in;i++)

cina[i];

for(i=n-1;i=1;i--)

for(j=0;ji;j++)

if(a[j]a[j+1]){

temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

}

for(i=0;in;i++)

couta[i];

return0;

};#includeiostream //解法3:插入排序

usingnamespacestd;

intmain()

{

intn,a[100],i,j,k,temp;

cinn;

for(i=0;in;i++)cina[i];

for(i=0;in;i++){

for(j=i-1;j=0;j--)if(a[i]=a[j])break; //为a[i]寻找插入位置j+1

if(j!=i-1) {

temp=a[i];

for(k=i-1;kj;k--)a[k+1]=a[k];

a[k+1]=temp;

}

}

for(i=0;in;i++)couta[i];

return0;

};例5.4:已知数组a???有m个按升序排列的元素,数组b中有n个按降序排列的元素,编程将a与b中的所有元素按降序存入数组c中。;3.数组查找;例5.6:学校推出了10名歌手,每个歌手都有唯一编号(0~9)。校学生会想知道这些歌手受欢迎的程序,设了一个投票箱,让每一个同学给自己喜欢的歌手投票,同学们使用歌手编号进行投票。现在学生会找你帮忙统计一下每位歌手获得的票数,并颁发“最受欢迎歌手奖”,该奖项颁发给得票最多的歌手。若有多名歌手并列第一,则均可获奖。;例5.7:输入从小到大排好序的n个元素,找出某元素第一次出现的位置。

输入:输入分三行,第一行是一个正整数n(n1000),第二行是n个整数,第三行为一个整数x表示待查找的元素。

输出:如果x在序列中,则输出x第一次出现的位置,否则输出-1。;4.字符数组与字符串(字符数组的初始化);4.字符数组与字符串(字符串的输入输出);4.字符数组与字符串(C语言的字符串处理函数);例5.8:输入一个以回车结束的字符串,该字符串由数字和字母组成。请过滤掉所有非数字字符,然后将数字字符串转换成十进制整数后乘以2输出。

输入:输入一个以回车符结束的字符串,长度不超过100,由数字和字母组成。

输出:将转换后的整数乘以2输出,测试数据保证结果在整数范围内;4.字符数组与字符串(C++的字符串处理);例5.9:输入一个1到7之间的数字,表示星期一到星期日,输出相应的英文:Mon、Tue、Wed、Thur、Fri、Sat、Sun。;例5.10:输入一个0和1字符组成的二进制字符串,请转换成十六进制。

输入:输入一个0/1字符串,长度小于100000。(如:11010100101)

输出:输出1行转换后的十六进制。(6A5);例5.11:输入一行字符,统计其中有多少个单词

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档