版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言程序设计一维数组的定义CONTENTS01一维数组的定义02样例分析目录一维数组的定义问题提出:输入全班40位同学的成绩,输出每位同学的成绩及该成绩与平均成绩之差。解题分析:
1、输入成绩,计算总分
2、求出平均值
3、输出每位同学成绩及该成绩与平均成绩之差难点:需要保存40个原始数据!解决办法:使用数组一维数组的定义数组是相同数据类型的有序数据的集合。一维数组定义的一般形式为:类型名数组名[常量表达式];例如:
inta[100];注意:该语句相当于定义了100个整数变量,分别为:
a[0]a[1]a[2]...a[99]intmain(){inta[100];intx;a[23]=9;a[24]=7;a[25]=8;x=a[23]+a[25];printf("x=%d\n",x);return0;}一维数组的定义【样例分析】如下程序错在哪?#include<stdio.h>intmain(){inta[10];inti,sum=0;printf("请输入10个整数\n");for(i=1;i<=10;i++){scanf("%d",&a[i]);sum+=a[i];}printf("总和为:%d\n",sum);return0;}样例分析【样例】输入小组7位同学的成绩,输出每位同学的成绩及该成绩与本组平均成绩之差。#include<stdio.h>intmain(){doublea[100],sum=0.0,ver;inti;printf("请输入7个成绩\n");for(i=1;i<=7;i++){scanf("%lf",&a[i]);sum+=a[i];}ver=sum/7.0;for(i=1;i<=7;i++)printf("%lf%lf\n",a[i],a[i]-ver);return0;}C语言程序设计一维数组的使用CONTENTS01一维数组的使用目录一维数组的使用【样例】:输入10个整数,求总和、最大值、最小值步骤:
1、定义相关变量
2、输入整数,保存在数组中a[1]a[2]…a[10]3、分别求出总和、最大值、最小值
4、输出一维数组的使用【样例】:输入10个整数,求总和、最大值、最小值求总和方法:
sum=0;
sum=sum+a[1];sum=sum+a[2];….
sum=sum+a[10]改为循环语句inti;for(i=1;i<=10;i++)sum+=a[i];一维数组的使用【样例】:输入10个整数,求总和、最大值、最小值求最大值方法:
max先等于a[1]a[2]与max比较,如果a[2]大,则max=a[2]
a[3]与max比较,如果a[3]大,则max=a[3]….
a[10]与max比较,如果a[10]大,则max=a[10]改为循环语句max=a[1];for(i=2;i<=10;i++)if(a[i]>max)max=a[i];最小值的求法类似!一维数组的使用【样例】:输入10个整数,求总和、最大值、最小值代码如下:#include<stdio.h>intmain(){inti,max,min,sum=0;inta[100];printf("请输入10整数\n");for(i=1;i<=10;i++){scanf("%d",&a[i]);}
for(i=1;i<=10;i++)sum+=a[i];max=a[1];for(i=2;i<=10;i++)if(a[i]>max)max=a[i];min=a[1];for(i=2;i<=10;i++)if(a[i]<min)min=a[i];printf("sum=%d,max=%d,min=%d\n",sum,max,min);return0;}C语言程序设计用数组法求解裴波那契数列的第n项CONTENTS01Fibonacci数列02数组的定义目录03利用数组求Fibonacci数列第n项Fibonacci数列Fibonacci数列112358….Fibonacci数列问题:输入n,输出Fibonacci数列的第n项112358….数组的定义数组的定义intdata[100];该语句定义了100个整数变量,分别是:
data[0]data[1]data[2]…data[99]利用数组求Fibonacci数列第n项Fibonacci数列问题:输入n,输出Fibonacci数列的第n项112358….参考代码C语言程序设计二维数组CONTENTS01二维数组的定义与初始化02二维数组的使用目录二维数组的定义与初始化二维数组的定义方式与一维数组类似,其语法格式如下:
类型说明符数组名[常量表达式1][常量表达式2];行下标列下标二维数组的定义与初始化完成二维数组的定义后,需要对二维数组进行初始化,初始化二维数组的方式有四种,具体如下:第1种按行给二维数组赋初值inta[2][3]={{1,2,3},{4,5,6}};第2种将所有的数组元素按行顺序写在一个大括号内inta[2][3]={1,2,3,4,5,6};第3种对部分数组元素赋初值intb[3][4]={{1},{4,3},{2,1,2}};第4种对全部数组元素置初值,则第一个下标可省略inta[][3]={1,2,3,4,5,6};二维数组的引用二维数组的引用方式同一维数组的引用方式一样,也是通过数组名和下标的方式来引用数组元素,其语法格式如下:数组名[下标][下标];二维数组的使用【样例1】使用scanf读入一个3行4列的矩阵,要求编写程序
输出其中值最大的那个元素,以及其所在的行号和列号。#include<stdio.h>intmain(){inta[3][4];inti,j,max,row,col;printf("请输入一个3行4列的矩阵到二维数组中\n");for(i=0;i<3;i++){printf("请输入第%d行:",i);for(j=0;j<4;j++){scanf("%d",&a[i][j]);}}max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++){if(a[i][j]>max){
max=a[i][j];
row=i;
col=j;}
}printf("最大的元素是%d,它在第%d行第%d列\n",max,row,col);
return0;}
二维数组的使用【样例2】有一个二维数组inta[2][3]={{5,8,19},{67,8,78}};
将这个二维数组行列元素互换,存到另一个数组后输出。#include<stdio.h>intmain(){inta[2][3]={{5,8,9},{6,7,8}};intb[3][2];inti,j;printf("原二维数组a是输出如下:\n");for(i=0;i<=1;i++){for(j=0;j<=2;j++){printf("%5d",a[i][j]);b[j][i]=a[i][j];}printf("\n");}printf("行列互换,复制到二维数组b之后:\n");for(i=0;i<=2;i++){for(j=0;j<=1;j++){printf("%5d",b[i][j]);}printf("\n");}return0;}C语言程序设计数组作为函数的参数汇报人:陈文CONTENTS01数组元素作为参数02整个数组作为参数目录数组元素作为参数
数组元素就是用数组名及下标表示,本质上,它与普通变量并无区别。因此将数组元素作为函数实参使用与普通变量是完全相同的。如:数组元素作为参数分析:
1、编写判断x是否为质数的函数pd(x),是质数,则返回1,否则返回0
2、数组data1中的元素,逐一取出调用pd函数。样例1:含有n1个元素数组data1,问有多少个质数?整个数组作为参数样例2:含有n1个元素数组data1,含有n2个元素数组data2,问它们分别有多少个质数?整个数组作为参数样例3:含有n1个元素数组data1,含有n2个元素数组data2,问它们分别有多少个质数?要求:将数组作为参数,传给caculate()函数整个数组作为参数注意:
1、数组名就是数组的首地址。因此在数组名作函数参数时所进行的传送只是地址值的传送,形参与实参指向了同一个地址。
2、形参与实参写法不同。实参直接用数组名。而形参则要使用:
数组
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026服装制造加工行业市场供需分析及投资规划评估发展研究报告
- 2026服装制造业市场供需环境调研及投资未来拓展规划考察报告
- 2026服务器内存条国产化替代行业市场供需现状及产业链投资布局研究咨询
- 2026晶圆级测试封装一体化解决方案与测试设备市场需求预测
- 2026明向行业风险投资发展分析及投资融资策略研究报告
- 2026教育综合体运营模式与区域落地可行性研究报告
- 2026教育投影机防蓝光技术标准与健康影响研究
- 2026教育信息化平台服务模式创新与用户体验报告
- 2026抗菌肽敷料耐药性规避策略与慢性伤口处理市场替代潜力
- 2026建筑装饰行业市场现状供需分析及投资评估规划分析研究报告
- 2026年安全生产月经典事故警示案例汇编(全行业)
- 2025学年惠州市惠城区八年级语文下学期期中试卷附答案解析
- 2026新疆能源(集团)有限责任公司财务系统人员招聘6人笔试历年参考题库附带答案详解
- 2026年中国国家铁路集团招聘笔试大纲及备考指南
- 2026届广东广州市普通高中毕业班综合测试(二)日语(含答案)
- 工程合同条款审核指引方案
- 2026年能源技术基础基础试题库及完整答案详解(必刷)
- 交管12123驾照学法减分题库500题(含答案)
- 船体分道建造的主要内容和支撑条件3-3333333概要
- GB/T 16288-2024塑料制品的标志
- 锦鲤的养殖与鉴赏
评论
0/150
提交评论