- 1、本文档共73页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
也不能用printf()函数直接输出整个数组(字符数组除外)。下面例子中展示了一些不正确的用printf()函数输出数组元素的方式。【例】无效的用printf()函数输出数组元素#includestdio.hvoidmain(){inta[5]={1,2,3,4,5};printf(%d\n,a);/*不正确*/printf(%d,%d,%d,%d,%d\n,a);/*不正确*/}程序中用scanf()函数给数组元素赋值以及用printf()函数输出数组元素值时通常要用到循环。【例】数组元素的输入输出#includestdio.hvoidmain(){inta[5],i;for(i=0;i5;i++) scanf(%d,a[i]);for(i=0;i5;i++)printf(%d\n,a[i]);}5.2.3一维数组作为函数参数数组可以作为函数的参数使用,进行数据传送。数组用作函数参数有两种形式,一种是把数组元素(下标变量)作为实参使用;另一种是把数组名作为函数的形参和实参使用。1.数组元素作函数实参数组元素作为函数实参使用与处理普通变量没有什么差别,在发生函数调用时,把作为实参的数组元素的值传送给形参,实现单向的值传送。如果在函数中形参发生改变,对作为实参的数组元素是没有影响的。【例5.2】数组元素作函数实参2.数组名作为函数参数【例5.3】数组名作为函数参数注意:数组名作为函数参函数时,形参和实参都必须是类型相同的数组。另外,为了防止越界访问,将数组传递给被调函数时,通常也将其长度同时传递给被调函数,注意:在用数组名作函数参数时,不是把实参数组的每一个元素的值都赋予形参数组的各个元素。编译器不为形参数组分配内存。函数调用时,形参数组名从实参数组那里取得首地址之后,也就等于有了实际的存储空间(与实参数组共用)。5.2.4一维数组应用举例1.统计【例5.4】有一个学院在学生会换届选举中由全体学生无记名投票直选学生会主席,共有10名候选人,每个人的代号分别用1,2,3,…,10表示。每个学生填写一张选票,若同意某名候选人则在其姓名后画个圆圈即可(只能选一个)。编写一个程序根据所有选票统计出每位候选人所得票数,其中每张选票上所投候选人的代号从键盘输入,当输入完所有选票后用-1作为数据输入结束的标志。2.排序【例5.5】已知有10个整数:24,56,8,47,63,82,27,15,90,39,编写一个程序按照从小到大的顺序输出。第一趟j=0第二趟j=1245684763824475663i=1245684763第三趟j=2i=2248564763824475663i=3248475663i=42484756633.查找【例5.6】已知有10个整数:22,10,44,17,31,51,89,68,120,95,从键盘输入一个给定值x,在该序列中查找是否有与给定值x相等的一个数。1)顺序查找2)二分查找4.插入【题目】已知有10个整数:3,6,18,28,54,68,87,105,127,162,已从小到大排好序,编写一个程序将一给定值x插入到该序列中并保持原来的从小到大的顺序不变。给定值x从键盘输入。思考题:5.3二维数组5.3.1二维数组的定义与初始化1.二维数组的定义二维数组定义的一般格式是:存储类型数据类型数组名[整型表达式1][整型表达式2]二维数组定义的要求和一维数组定义的一样,只是多了一对方括号“[]”极其整型表达式。其中整型表达式1表示第一维(行)的长度,整型表达式2表示第二维(列)的长度。【例】二维数组定义#includestdio.hvoidmain(){inta[3][4];introw=2,col=3;doubleb[row][col];/*变长数组,C99之前不可以*/}假设第一维(行)的长度为m,第二维(列)的长度为n,则整个数组的元素个数为m×n个。二维数组的数组元素用数组名和两个下标表示,则数组元素行下标的取值范围是0~m-1之间的m个整数,列下标的取值范围是0~n-1之间的n个整数。例如,上面程序中定义的二维数组a,共有3
文档评论(0)