版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022/7/18电气与信息工程学院计算机系制造Lesson 10 数据的组织构造2022/7/18电气与信息工程学院计算机系制造学习目的:31掌握二维数组的运用2022/7/18电气与信息工程学院计算机系制造3二维数组3数学概念矩阵: 80 70 9997 83 92 6591 85 88 76例:2022/7/18电气与信息工程学院计算机系制造3二维数组3日常生活例子表格:123456789101112131415162022/7/18电气与信息工程学院计算机系制造3二维数组3特点: 按行、列分布,并且每个数据需求由两个位置确定: 一个行位置,一个列位置C言语中实现方法:二维数组2022/
2、7/18电气与信息工程学院计算机系制造3二维数组3在C言语中如何实现?类型 数组名 行长度列长度int array 34例:float d 35; int a66; char s410;一切元素都是int数组名3行4列留意:必需是常量array 2022/7/18电气与信息工程学院计算机系制造3二维数组3二维数组的援用1234567891011127第1行第2列数组aa1 2数组名行下标列下标 2022/7/18电气与信息工程学院计算机系制造3二维数组3二维数组初始化:在定义二维数组时,给元素赋初值方式1: int a23=1,2,3,4,5,6; 方式2: int a23=1,2,3,4,5
3、,6; 方式3: int a 3=1,2,3,4,5,6; 方式4: int a2=1,2,3,4,5,6; 错误!2022/7/18电气与信息工程学院计算机系制造3二维数组操作4二维数组元素的援用及根本操作数组的赋值 for (i=0; iROWS; i+) for (j=0; jCOLS; j+) valueij = i+j; 数组的输入 for (i=0; iROWS; i+) for (j=0; jCOLS; j+) scanf(“%d, &valueij);#define ROWS 4#define COLS 5int value ROWSCOLS; 2022/7/18电气与信息工程
4、学院计算机系制造3二维数组操作4二维数组元素的援用及根本操作3. 数组的输出 for (i=0; iROWS; i+) for (j=0; jCOLS; j+) printf(“%4d, valueij); putchar(n); #define ROWS 4#define COLS 5int value ROWSCOLS; 2022/7/18电气与信息工程学院计算机系制造3二维数组操作4例题:从键盘输入如下的矩阵1 2 4 5 3 4 5 75 7 9 8然后输出该矩阵2022/7/18电气与信息工程学院计算机系制造lessson11_01.c#include int main()int a
5、34,i,j;for(i=0;i3;i+)for(j=0;j4;j+)scanf(%d,&aij);for(i=0;i3;i+)for(j=0;j4;j+)printf(%4d,aij);printf(n); return 0;2022/7/18电气与信息工程学院计算机系制造3二维数组运用5例6: 判别给定方阵能否为对称矩阵。 1102188210413992521136143688991471232253612332022/7/18电气与信息工程学院计算机系制造3二维数组运用5问题分析对于一个给定的NN矩阵array,假设矩阵中的每个元素都满足arrayij=arrayji,那么称这个矩阵为
6、对称矩阵。 在判别一个给定的矩阵能否为对称矩阵时,只需求用下三角部分的每个元素与对应的上三角元素进展比较。假设每一对元素都相等,这个矩阵就是对称矩阵,否那么,就是非对称矩阵。2022/7/18电气与信息工程学院计算机系制造算法描画 2022/7/18电气与信息工程学院计算机系制造#include #define NUM 5 矩阵行列数int main( ) int mNUMNUM; /*定义二维数组变量*/ int i, j;/* 输入矩阵 */ printf(Enter %d rows %d cols datas for the maxtrix:n,NUM,NUM); for (i=0; i
7、NUM; i+) for (j=0; jNUM; j+) scanf(%d, &mij); /* 显示矩阵 */ for (i=0; iNUM; i+) for (j=0; jNUM; j+) printf(%4d, mij); printf(n); lesson11_06_1.c2022/7/18电气与信息工程学院计算机系制造/* 判别矩阵能否对称并输出相应的结果 */ for (i=0; iNUM; i+) for (j=0; ji; j+) if (mij!=mji) printf(nThe matrix isnt symmetrical.); return 0; printf(nThe
8、 matrix is symmetrical.); return 0;2022/7/18电气与信息工程学院计算机系制造3二维数组运用5改良:从文件读入数组运用标志变量判别2022/7/18电气与信息工程学院计算机系制造#include #define NUM 5 矩阵行列数int main( ) int mNUMNUM; /*定义二维数组变量*/ int i, j; FILE * fp; /* 输入矩阵 */ fp=fopen(m.txt,r); for (i=0; iNUM; i+) for (j=0; jNUM; j+) fscanf(fp,%d, &mij); /* 显示矩阵 */ fo
9、r (i=0; iNUM; i+) for (j=0; jNUM; j+) printf(%4d, mij); printf(n); lesson11_06_2.c2022/7/18电气与信息工程学院计算机系制造/* 判别矩阵能否对称并输出相应的结果 */ for (i=0; iNUM; i+) for (j=0; ji; j+) if (mij!=mji) flag=0; break; if(flag=1)printf(n对称); elseprintf(n不对称); return 0;2022/7/18电气与信息工程学院计算机系制造3二维数组运用5例7:输入3个同窗、4门课程的成果,并按照如
10、下格式输出(成果保管在score.txt文件中) 80 70 9997 83 92 6591 85 88 762022/7/18电气与信息工程学院计算机系制造#include #define STUS 3 #define LSN 4 int main( ) int mSTUSLSN; /*定义二维数组变量*/ int i, j; FILE * fp; fp=fopen(score.txt,r); for (i=0; iSTUS; i+) for (j=0; jLSN; j+) fscanf(fp,%d, &mij); /* 显示矩阵 */ for (i=0; iSTUS; i+) for (j
11、=0; jLSN; j+) printf(%4d, mij); printf(n); lesson11_07.c2022/7/18电气与信息工程学院计算机系制造3二维数组运用5从键盘输入一个矩阵,将该矩阵转置后输出2022/7/18电气与信息工程学院计算机系制造分析:定义一个2行4列的二维数组a,用于存放原始的矩阵定义一个4行2列的二维数组b,用于存放转置后的矩阵循环数组a的一切元素,将a中的每一个元素存放至b的对应位置:行列位置正好相反输出二维数组b2022/7/18电气与信息工程学院计算机系制造3课堂练习6输出如以下图形16111621271217223813182349141924510
12、1520252022/7/18电气与信息工程学院计算机系制造3排序7例:假设用户经过键盘输入一个整型数列。请编写一个程序,将其按照从小到大的顺序重新陈列。即在从键盘输入如下的数据2 6 8 1 9 5 4输出1 2 4 5 6 8 9 2022/7/18电气与信息工程学院计算机系制造3排序7问题分析首先从n个数据中选择一个最小的数据,并将它交换到第1个位置;然后再从后面n-1个数据中选择一个最小的数据,并将它交换到第2个位置;以此类推,直至最后从两个数据中选择一个最小的数据,并将它交换到第n-1个位置为止,整个排序操作终了。 2022/7/18电气与信息工程学院计算机系制造算法描画 2022/
13、7/18电气与信息工程学院计算机系制造#include #define NUM 10 /* 参与排序的数据个数 */int main() int dataNUM; /* 存放参与排序的一切整数 */ int i, j, minIndex, temp; /* 经过键盘输入待排序的整型数列 */ printf(nEnter %d integers., NUM); for (i=0; iNUM; i+) scanf(%d, &datai); /* 显示原始整型数列 */ printf(n%d integers are:, NUM); for (i=0; iNUM; i+) printf(%5d, datai); lesson10_01.c2022/7/18电气与信息工程学院计算机系制造 for (i=0; iNUM-1; i+) minIndex = i; for (j=i+1; jNUM; j+) if (datajdataminIndex)/* 交换 * temp = dataj; dataj = dataminIndex; dataminIndex = tem
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年苏科版新教材三年级上册信息技术第二单元教学设计
- 2028年社区室外环境管理合同三篇
- 易日碎石加工厂项目水土保持方案报告表
- 江苏常州淦西~时代 220 千伏线路工程水土保持方案报告表
- 2026年职业技能(工业废水处理工)专业技术及理论知识考试题及答案
- 6#绝缘纸板车间水土保持方案报告表
- 2025-2026学年表演课程教学设计英语
- 2025-2026学年科学领域教案纸花
- 11.2一元一次不等式教学设计 人教版七年级数学下册
- 2025-2026学年考试教案设计
- 2025年江苏省农垦集团有限公司人员招聘笔试备考及答案详解(易错题)
- 施工安全监督检查表(水利工程)
- 化工电器仪表知识培训班课件
- 生本荆志强教育实践讲座体系
- 2025年中药qc试题及答案
- 2025年韩语TOPIK1级考试试卷听力真题集
- GB/T 5709-2025纺织品非织造布术语
- 鞘内药物输注镇痛治疗和管理-多学科专家共识
- 部编版七年级下册历史期末复习知识点提纲
- 苏教版四年级科学教学案例展示
- (高清版)AQ 1074-2009 煤矿瓦斯输送管道干式阻火器通 用技术条件
评论
0/150
提交评论