C语言程序设计-第5章-数组.ppt
上传人:17****21 上传时间:2024-09-09 格式:PPT 页数:82 大小:2.8MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

C语言程序设计-第5章-数组.ppt

C语言程序设计-第5章-数组.ppt

预览

免费试读已结束,剩余 72 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

授课教师:厦门理工学院软件学院第5章数组第5章数组5.1概述程序代码:5.1概述(续)5.2一维数组以下数组定义是正确的:#defineN10……floatscore1[N],score2[N];intnum[10+N];charc[26];数组在内存的存放5.2.2一维数组元素的引用5.2.2数组元素的引用(续)5.2.2数组元素的引用(续)5.2.3一维数组的初始化5.2.4一维数组应用举例程序如下:5.2.4一维数组应用举例(续)程序如下:5.2.4一维数组应用举例(续)冒泡法排序(续)冒泡法排序(续)程序如下:#defineN6#include"stdio.h"voidmain(){inta[N];inti,j,t;printf("请输入%d个成绩,用空格隔开:\n",N);for(i=0;i<N;i++)scanf("%d",&a[i]);for(j=1;j<=N-1;j++)for(i=0;i<N-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("成绩从低分到高分的顺序是:\n");for(i=0;i<N;i++)printf("%d",a[i]);printf("\n");}以6个数:3、7、5、6、8、0为例,介绍选择法排序方法。思路:第一趟:将第一个数(擂主)依次和后面的数比较,如果后面的某数小于第一个数,则两个数交换,比较结束后,第一个数则是最小的数。第二趟:将第二个数(擂主)依次和后面的数比较,如果后面的某数小于第二个数,则两个数交换,比较结束后,第二个数则是次小的数;……。【例5-5】选择法排序(续)【例5-5】选择法排序(续)for(j=0;j<N-1;j++)for(i=j+1;i<N;i++)if(a[j]>a[i]){t=a[j];a[j]=a[i];a[i]=t;}printf("成绩从低分到高分的顺序是:\n");for(i=0;i<N;i++)printf("%d",a[i]);printf("\n");}5.2.5一维数组作函数参数voidsort(intb[],intn);voidprintarr(intb[]);main(){inta[10]={11,22,63,97,58,80,45,32,73,36};printf("Beforesort:\n");printarr(a);sort(a,10);printf("Aftersort:\n");printarr(a);}5.3二维数组二维数组可看作是一种特殊的一维数组a[3][4]=3;/*下标越界*/a[1,2]=1;/*应写成a[1][2]=1;*/5.3.3二维数组的初始化5.3.3二维数组的初始化(续)下面对二维数组的定义都是错误的:5.3.4二维数组应用举例程序如下:#include"stdio.h"voidmain(){inta[4][5],i,j;for(i=0;i<4;i++)for(j=0;j<5;j++)scanf("%d",&a[i][j]);printf("\n");printf("学号\t高数\t物理\t英语\t计算机\n");【例5-7】(续)5.3.4二维数组应用举例(续)【例5-8】(续)【例5-8】(续)【例5-8】(续)【例5-8】(续)5.3.5二维数组作函数参数5.3.5二维数组作函数参数(续)【例5-9】(续)【例5-9】(续)【例5-9】(续)【例5-9】(续)5.3.5二维数组作函数参数(续)程序如下:【例5-10】(续)【例5-10】(续)【例5-10】(续)5.4字符数组与字符串再例如:chara[3][5];a数组是一个二维的字符数组,可以存放15个字符或3个长度不大于4的字符串。5.4.3字符数组的初始化5.4.3字符数组的初始化(续)5.4.3字符数组的初始化(续)5.4.4字符数组的引用程序如下:2.对字符数组的整体引用2.对字符数组的整体引用(续)再例如:charstr1[10],str2[10],str3[10];scanf("%s%s%s",str1,str2,str3);输入:pascalbasicc5.4.5字符串处理函数1.字符串输出函数puts()2.字符串输入函数gets()3.字符串连接函数strcat()4.字符串复制函数strcpy()5.字符串比较函数strcmp()例如:比较两个字符串的大小。6.测试字符串长度函数strlen()7.大写字母转换成小写字母函数strlwr()8.小写字母转换成大写字母函数strupr()5.4.6字符数组应用举例gets(s);