




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C程序设计单元九数组和指针数组引入定义一维数组0102CONTENT数组元素的引用一维数组赋值0304一维数组的应用051.引入(1)从键盘输入10个人的身高,求平均身高并输出。(2)从键盘输入10个人的身高,求平均身高并统计比平均身高高的学生人数。2.定义一维数组数据类型数组名[数组长度];如:intcj[20];
floatnum[10]; constintN=10;doubled[N];注意:1.数组名的命名规则与变量相同;2.数组长度C99标准可以用变量;3.数组名表示该数组在内存中的首地址。3.数组元素的引用数组名[下标]注意:下标从0开始,最后一个元素的下标为:数组长度-1如:intnum[5];num数组的元素为:num[0]、
num[1]、
num[2]、
num[3]、
num[4]4.一维数组赋值(1)定义同时赋值基本格式:数据类型数组名[数组长度]={值,值,…,值};如:intnum[5]={1,2,3,4,5};
intnum[]={1,2,3,4,5};
intnum[5]={1,2};intnum[5]={0};intnum[5]=0;intnum[5]={1,2,3,4,5,6};(2)先定义后赋值intx[5];x={1,2,3,4,5};intx[5];x[0]=1;x[1]=2;intx[5],i;for(i=0;i<5;i++){
x[i]=i+1;}或:5.一维数组的应用(1)从键盘输入10个整数,找出最大数并输出。(2)随机产生10个两位整数,降序排列后输出。6410157原数组5个数:1546107找最大数15:1510467找第2大数10:1510746找第3大数7:1510764找第4大数6:升序排列怎么修改代码?谢谢THANKYOU主讲人:林勤花C程序设计精品在线开放课程单元九数组和指针多维数组引入定义二维数组0102CONTENT二维数组元素的引用二维数组赋值0304二维数组的应用05其他多维数组061.引入期末总评成绩计算。总评成绩=平时成绩*50%+期末考试成绩*50%,如果期末考试成绩低于35分,总评成绩即为期末考试成绩。平时成绩(50%)期末考试成绩(50%)总评成绩8086839026268670787054622.定义二维数组数据类型数组名[长度1][长度2];如:intcj[4][3];
floatnum[10][5];注意:1.数组名的命名规则与变量相同;2.数组长度只能使用常量表达式;3.数组名表示该数组在内存中的首地址。3.二维数组元素的引用数组名[行下标][列下标]注意:行、列下标都从0开始,最后一个元素的下标为:长度-1如:intcj[4][3];cj数组的元素为:cj[0][0]、cj[0][1]、cj[0][2]、
cj[1][0]、cj[1][1]、cj[1][2]、cj[2][0]、cj[2][1]、cj[2][2]、
cj[3][0]、cj[3][1]、cj[3][2]4.二维数组赋值(1)定义同时赋值基本格式:数据类型数组名[长度1][长度2]={值,值,…,值};如:intcj[4][3]={80,86,83,90,26,26,86,70,78,70,54,62};intcj[][3]={80,86,83,90,26,26,86,70,78,70,54,62};intcj[4][3]={80,86,83,90,26,26,86};intcj[4][3]={{80,86},{83},{90,26,26},{86}};(2)先定义后赋值intcj[4][3];cj[0][0]=80;cj[0][1]=86;……5.二维数组的应用输出杨辉三角的前15行,如下:111121133114641……分析:1.第1列和对角线都为12.其他元素=上一行同列+上一行前一列+6.其他多维数组数据类型数组名[长度1][长度2]…[长度n];如:声明三维数组
intcj[50][45][7];谢谢THANKYOU主讲人:廖若飞C程序设计精品在线开放课程单元九数组与指针指针指针的定义指针操作0102CONTENT01指针的定义-最常见的例子定义pNum是一个整型的指针,它指向变量num01指针的定义–原理高低intnum=100;int*pNum=#0065FECF100内存地址0065000000650004…………0065FECB0065FECF01指针的定义-语法数据类型*变量名;数据类型*变量名;风格一:星号紧跟着类型风格二:星号紧跟着变量01指针的定义仅定义int*pNum;定义并初始化int*pNum=#01指针的定义-例子02指针操作常规操作赋值解引用针针与数组相关的操作指针与整数相加减递增递减求差02指针操作-赋值int*pNum;pNum=0;int*pNum;pNum=NULL;int*pNum;intnum;pNum=#int*pNum;pNum=100;int*pNum;pNum=(int*)100;改变指针本身02指针操作–解引用解引用的星号定义时候的星号小结定义仅定义int*pNum;定义并初始化int*pNum=#常规操作赋值pNum=0;pNum=#解引用*pNum=100;num=*pNum;谢谢THANKYOU主讲人:廖若飞C程序设计精品在线开放课程单元九数组与指针函数、数组和指针结合函数与指针结合数组与指针结合0102CONTENT01函数与指针结合指针作为函数的参数指针作为返回类型指向函数的指针01指针作为函数参数–声明、定义、调用定义voidfun1(intnum){ …}voidfun2(int*pNum){ …}声明voidfun1(int);voidfun2(int*);普通参数指针参数调用fun1(100);fun1(num);fun2(&num);fun2(0);fun2(NULL);01指针作为函数参数–意义函数内部修改外部变量的值,需要用指针。02指针与数组结合–获取数组某元素地址intarray[]={1,3,8,9};int*pNum1=array;int*pNum2=&array[0];int*pNum3=&array[3];1389…………array02指针与数组结合–指针与整数相加减intarray[]={1,3,8,9};int*pNum0=&array[0];int*pNum1=&array[1];*(pNum0+1)=100;*pNum1=100;13=>10089…………array效果一样02指针与数组结合–指针递增递减intarray[]={1,3,8,9};int*pNum0=&array[0];*(pNum0++)=100;*(pNum0+1)=100;13=>10089…………array02指针与数组结合–指针求差intarray[]={1,3,8,9};int*pNum0=&array[0];Int*pNum3=&array[3];intsize=pNum3–pNum0;13=>10089…………array延伸:(int)pNum3–(int)pNum03*sizeof(int)小结函数与指针结合声明、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年美司那项目合作计划书
- 解读中秋节文化
- 环保生活的力量
- 寒露节气产品适配
- 卷材防水简易合同范本
- 申请办幼儿园的申请书
- 入校申请书范文简单又漂亮
- 加工合同范例英文
- 液压与气动技术 第2版 课件 项目四 换向回路的设计与构建
- 体培机构合同范例
- 高教版2023年中职教科书《语文》(基础模块)下册教案全册
- 新编英语教程6练习册答案
- 第19章-城市设计课件
- 临床检验基础-课件
- 针对本项目售后服务方案
- 新固废法课件PPT
- 城市轨道交通深基坑施工作业指导书
- 新人教版五年级下册小学数学全册课时练(一课一练)
- 2022(SOP)人民医院伦理委员会标准操作规程
- lanxess朗盛制革化学品说明书
- 宁氏谱系条目汇总表2016318支系名称家谱世系字辈-简明
评论
0/150
提交评论