书签 分享 收藏 举报 版权申诉 / 74
上传文档赚钱

类型C语言-数组课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4741782
  • 上传时间:2023-01-06
  • 格式:PPT
  • 页数:74
  • 大小:8.40MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《C语言-数组课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    语言 数组 课件
    资源描述:

    1、1ppt课件2023-1-62/722023-1-63/722023-1-64/722023-1-65/722023-1-66/722023-1-67/72保存大量保存大量同类型的同类型的相关数据相关数据2023-1-68/72a4a3a2 a1a0数组首地址数组首地址基类型基类型下标从下标从0开始开始2023-1-69/72a4a3a2 a1a02023-1-610/722023-1-611/722023-1-612/72main()int a5=1,2,3,4,5,b5;b=a;解决方法解决方法 方法方法1:1:逐个元素赋值逐个元素赋值 b0=a0;b1=a1;b2=a2;b3=a3;b4

    2、=a4;方法方法2:2:通过循环赋值通过循环赋值 int i;for(i=0;i5;i+)bi=ai;原因原因:数组名表示数组的首地址数组名表示数组的首地址,其值不可改变其值不可改变!2023-1-613/722023-1-614/722023-1-615/722023-1-616/722023-1-617/722023-1-618/722023-1-619/722023-1-620/72运行程序可以看到,变量运行程序可以看到,变量c c和和a a的值因数组越界而的值因数组越界而被悄悄破坏了被悄悄破坏了123456078#include#include int main()int a=1,c=

    3、2,b5=0,i;printf(%p,%p,%pn,b,&c,&a);for(i=0;i=8;i+)bi=i;printf(%d ,bi);system(pause);printf(nc=%d,a=%d,i=%dn,c,a,i);return 0;92023-1-621/722023-1-622/722023-1-623/722023-1-624/722023-1-625/721 2 34 5 06 0 00 0 0结果:结果:5,0,0【例例】若若int a 3=1,2,3,4,5,6,7,则则a数组的第一维大小是多少?数组的第一维大小是多少?1 2 34 5 67 0 02023-1-62

    4、6/722023-1-627/722023-1-628/72short int a23;a0a1a10 a11a12a00 a01a02a00a01a02a10a11a12需知道数组每行列数才能从起始地址开始正确读出数组元素需知道数组每行列数才能从起始地址开始正确读出数组元素2023-1-629/722023-1-630/722023-1-631/722023-1-632/722023-1-633/722023-1-634/722023-1-635/722023-1-636/722023-1-637/72冒泡排序(冒泡排序(BubbleSort)的基本概念是:依次比较相邻的)的基本概念是:依次

    5、比较相邻的两个数,将大数放在前面,小数放在后面。即在第一趟:首两个数,将大数放在前面,小数放在后面。即在第一趟:首先比较第先比较第1个和第个和第2个数,将大数放前,小数放后。然后比较个数,将大数放前,小数放后。然后比较第第2个数和第个数和第3个数,将大数放前,小数放后,如此继续,直个数,将大数放前,小数放后,如此继续,直至比较最后两个数,将大数放前,小数放后。至此第一趟结至比较最后两个数,将大数放前,小数放后。至此第一趟结束,将最小的数放到了最后。在第二趟:仍从第一对数开始束,将最小的数放到了最后。在第二趟:仍从第一对数开始比较,将大数放前,小数放后,一直比较到倒数第二个数(比较,将大数放前,

    6、小数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最小的),第二趟结束,在倒数第倒数第一的位置上已经是最小的),第二趟结束,在倒数第二的位置上得到一个新的最小数(其实在整个数列中是第二二的位置上得到一个新的最小数(其实在整个数列中是第二小的数)。如此下去,重复以上过程,直至最终完成排序。小的数)。如此下去,重复以上过程,直至最终完成排序。由于在排序过程中总是大数往前放,小数往后放,相当由于在排序过程中总是大数往前放,小数往后放,相当于气泡往上升,所以称作冒泡排序。于气泡往上升,所以称作冒泡排序。2023-1-638/722023-1-639/722023-1-640/722023-1-6

    7、41/72#define N 10#include int main()int numN+1,in,i,j;for(i=0;iN;i+)scanf(%d,&numi);/printf(n 请输入一个要插入的数:请输入一个要插入的数:);scanf(%d,&in);2023-1-642/72 for (i=0;iin)break;for (j=N;ji;j-)numj=numj-1;numi=in;for (i=0;iN+1;i+)printf(%d,numi);printf(n);return 0;2023-1-643/72)3()2(2)1(12121nfffnfnfnnnf0=1 (n=0

    8、)2023-1-644/72)3()2(2)1(12121nfffnfnfnnnf0=1 (n=0)2023-1-645/722023-1-646/722023-1-647/722023-1-648/722023-1-649/722023-1-650/722023-1-651/722023-1-652/722023-1-653/722023-1-654/722023-1-655/722023-1-656/722023-1-657/72#include#define N 40void ReadScore(int score,int n);int FindMax(int score,int n);

    9、int main()int scoreN,max,n;scanf(%d,&n);ReadScore(score,n);max=FindMax(score,n);printf(The highest score is%dn,max);return 0;2023-1-658/72max(i=0)max(i=2)max(i=3)2023-1-659/722023-1-660/722023-1-661/72k=1k=2k=0k=12023-1-662/72k=3k=4k=3k=42023-1-663/722023-1-664/72#include#define N 40void ReadScore(i

    10、nt score,int n);void PrintScore(int score,int n);void DataSort(int score,int n);int main()int scoreN,n;scanf(%d,&n);ReadScore(score,n);DataSort(score,n);printf(“Sorted scores:);PrintScore(score,n);return 0;2023-1-665/72void ReadScore(int score,int n)int i;for(i=0;in;i+)scanf(“%d”,&scorei);void Print

    11、Score(int score,int n)int i;for(i=0;in;i+)printf(“%d”,scorei);2023-1-666/72void DataSort(int score,int n)/*选择法选择法*/int i,j,k,temp1;for(i=0;in-1;i+)k=i;for(j=i+1;j scorek)k=j;/*记录最大数下标位置记录最大数下标位置*/if(k!=i)/*若最大数不在下标位置若最大数不在下标位置i*/temp1=scorek;scorek=scorei;scorei=temp1;2023-1-667/722023-1-668/72哈,找到了

    12、!哈,找到了!事先不必排序事先不必排序2023-1-669/72哈,找到了!哈,找到了!按升序排序按升序排序2023-1-670/72唉,没找到!唉,没找到!2023-1-671/72找到时返回找到时返回下标位置下标位置找不到时找不到时 返回返回-1-12023-1-672/722023-1-673/72谁能出线谁能出线背景:背景:电视台举办电视台举办“超级学生超级学生”才艺大赛,由于报名人数狂多才艺大赛,由于报名人数狂多,所以要先进行分组预赛。按规定,每,所以要先进行分组预赛。按规定,每10名学生为一名学生为一个预赛小组,评委打出分数(个预赛小组,评委打出分数(0100分),各小组第一分),各小组第一名可以进入下一轮;如果有多名学生得分相同都是第名可以进入下一轮;如果有多名学生得分相同都是第一名,则可同时进入下一轮。一名,则可同时进入下一轮。输入:输入:按顺序给出一个小组按顺序给出一个小组10个人的最后得分(个人的最后得分(int)。)。输出:输出:能够出线的学生序号(能够出线的学生序号(09)。)。2023-1-674/72#include int main()int i,s10,max=0;for(i=0;i10;i+)scanf(%d,&si);if(maxsi)max=si;for(i=0;i10;i+)if(max=si)printf(%dn,i);return 0;

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:C语言-数组课件.ppt
    链接地址:https://www.163wenku.com/p-4741782.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库