C语言-第7章-数组

上传人:龙*** 文档编号:481269 上传时间:2017-03-10 格式:PPTX 页数:66 大小:410.78KB
返回 下载 相关 举报
C语言-第7章-数组_第1页
第1页 / 共66页
C语言-第7章-数组_第2页
第2页 / 共66页
C语言-第7章-数组_第3页
第3页 / 共66页
C语言-第7章-数组_第4页
第4页 / 共66页
C语言-第7章-数组_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《C语言-第7章-数组》由会员分享,可在线阅读,更多相关《C语言-第7章-数组(66页珍藏版)》请在金锄头文库上搜索。

1、何平 2017/3/10 1 编程练习: 英语 数学 社科 王 宁 90 90 89 王 光 89 91 95 . 李 达 90 100 90 . 问题 : 编程对 30位同学,计算每位同学的总成绩和平均成绩。 何平 2017/3/10 2 参考程序: #) i , j ,x; a , s ; i=1; i j,a10; j=0;j=0;%6d,aj); a =0,1,2,3,4,5,6,7,8,9; 若对全部元素赋初值,则可以不指定数组的长度。 =0,1,2,3,4,5,6,7,8,9; 何平 2017/3/10 12 指定部分元素的初始值 a10=0,0,1; 只给数组 未赋初值 的元素的

2、值在此默认为 0; 初始化(续) 注意 : 1: 若初值的个数小于数组元素的个数,则初始化时不能省略数组元素的个数。 2:初值的个数 不能大于 数组元素的个数。 何平 2017/3/10 13 例 阅读下列源程序,请写出运行结果。(注意输出及处理) # f10, i; f0=1; f1=1; i=2;i i,x10; n); i=0; xi; 输入 处理 输出 何平 2017/3/10 18 思考 :找出 10个数中的最大值及最小值 ,并且交换 ,输出处理后的数据序列。 # i,x10,n,m,a; n); i=0; xi; n=i; xiaj+1) aj与 aj+1交换 i=1;iaj+1

3、1 0 aj与 aj+1交换 i=1;i # 10 aN , i , j , t; 请输入 10个数 :n); i = 0 ; i aj+1) t=aj; aj=aj+1; aj+1=t; n); i=0; i # 10 aN , i , j , t; 请输入 10个数 :n); i = 0 ; i aj+1) t=aj; aj=aj+1; aj+1=t; n); i=0; iaj 1 0 k=j k=0 1 0 ak与 a0交换 对 i j=i+1;jaj 1 0 k=j k=i 1 0 ak与 ai交换 i=0;i i,j,k,c,a10; i=0;iaj+1) t=aj; aj=aj+1

4、; aj+1=t; i=0;amx 1 0 b= t=m+1 当 t #N 100 n,aN,m,t,b,i,x; %d,&n); /*输入已排序好的数列 */ i=0;i # 100 f1( ,f2( , aN,j,n,x; %d,&n); j=0;jaj+1) t=aj; aj=aj+1; aj+1=t; 何平 2017/3/10 34 参考源程序(续): /*折半查找法完成查找 */ f2(a ,n , x) t=0,b, m; b= m =( t + b) / 2; if(am=x) 找到了 %3d,是排序后的 a%dn,x,m); if(x a23=1,2,3,4,5,6; b32,

5、i,j; a:n); i=0;i # 11 i,j,aNN; i=1;i s5; i; i=0;i s5; %s, s); %s, s); 字符串的输入输出 整个字符串 I/O: %s 何平 2017/3/10 49 字符串的输入输出 (续) 字符数组 可以通过数组元素一个一个地进行输入输出 , 也可以对数组整体进行输入输出 , 通过数组元素一个一个输入输出时 , 用格式符 “ c”, 而对数组整体输入输出时 , 用格式符 “ s”。 整体 I/ %s,一维数组名 ); %s,一维数组名 ); 注意: 1:由键盘输入的串应短于数组的长度; 2:输出时,遇到 0停止输出。 何平 2017/3/1

6、0 50 例 读下列源程序,注意其输入与输出的处理方式。 # j; a580; j=0;j x10,y30; j,k; x); y); /*输入两个串 */ j=0;yj!=0;j+); /*查找 0的下标值 */ k=0;xk!=0;j+,k+) yj=xk; /*j=0; n); y); y,x); #何平 2017/3/10 55 功能:将字符 数组 2中存放的字符串 拷贝到字符数组 1中. 返值:返回字符数组 1的首地址 说明: 字符数组 1必须足够大 拷贝时 0 一同拷贝 不能使用赋值语句为一个字符数组赋值 字符串拷贝函数 字符数组 1,字符数组 2) 例如: 2=“; =“+; %

7、s”, s1,; 输出结果: +平 2017/3/10 56 例 析下列源程序的功能 : # x20,y20; j; x); n); j=0;xj!=0;j+) yj=xj; yj=0; %s,y); y,x); 注意: 不能 将一个字符串 赋值 给字符数组,只能逐个字符赋值或用)完成。 #平 2017/3/10 57 示例 : 请读程序片段(字符串内没有空格字符): %dn” , S ” ); 上面程序片段的输出结果是( )。 字符串长度函数 字符数组 ) 功能:计算字符串 有效 长度 (即 :字符个数 ) 返值:返回字符串实际长度,不包括 0 在内 何平 2017/3/10 58 字符串比

8、较函数 字符 数组名 1,字符 数组名 2) 功能:比较两个字符 数组中存放字符 串 的大小 比较规则:对两串从左向右逐个字符比较( 直到遇到不同字符或 0 为止 返值:返回 a. 若字符串 1 字符串 2, 返回 正 整数 c. 若字符串 1= 字符串 2, 返回 零 说明:字符串比较不能用类似 “ =” 等关系运算符 ,必须用平 2017/3/10 59 例 对任意输入的五行字符串(每行不超过 20个字符),比较大小,输出其值最大的字符串。 何平 2017/3/10 60 定义 s, # j; x521,1; j=0;j s80; , , , , i; s); i = 0 ; si!= 0

9、; i+ ) A= 0) ; ; 有 % % % %n, n3, 例 统计一行字符 (不超过 79个字符 )中字母 、 空格 、数字及其他字符的个数 。 应用举例 何平 2017/3/10 63 组作函数的参数 数组可以作为函数的参数,但是在向函数传递数组时,通常有两种方法:即: “ 地址 ” 的传递 “ 值 ” 的传递 何平 2017/3/10 64 例 阅读下列源程序,请写出运行结果。 # 20 f(b , n , m) i; i=m;i=n; bi+1=bi; i,aN=1,2,3,4,5,6,7,8,9,10; f(a,2,9); i=0;i x,y) xy? x: y ) ; a10, j, j=0;j f ( ); i, x10; i=0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号