数组的应用实验报告
数组实验报告反思心得
一、实验背景本次实验旨在通过学习数组的相关知识,掌握数组的定义、初始化、赋值、引用等方法,以及数组的操作和应用。
通过本次实验,我对数组有了更深入的理解,同时也对编程思维和算法设计有了更全面的提升。
二、实验过程1. 实验一:一维数组的定义与初始化实验过程中,我首先学习了如何定义一维数组,以及如何对数组进行初始化。
通过实验,我掌握了以下知识:(1)一维数组的定义格式:类型符数组名[常量表达式];(2)一维数组的初始化方法:在定义数组时,可以在方括号内指定数组的长度,并为数组元素赋初值。
2. 实验二:二维数组的定义与初始化在实验二,我学习了二维数组的定义与初始化。
通过实验,我掌握了以下知识:(1)二维数组的定义格式:类型符数组名[常量表达式1][常量表达式2];(2)二维数组的初始化方法:可以在定义数组时,指定数组的行数和列数,并为数组元素赋初值。
3. 实验三:数组元素的引用与赋值在实验三,我学习了如何引用数组元素,以及如何为元素赋值。
通过实验,我掌握了以下知识:(1)数组元素的引用方法:数组名[下标];(2)数组元素的赋值方法:使用赋值运算符“=”。
4. 实验四:数组的操作与应用在实验四,我学习了数组的操作与应用,包括冒泡排序、选择排序等。
通过实验,我掌握了以下知识:(1)冒泡排序算法:通过比较相邻元素的大小,将较大的元素交换到后面,直到整个数组有序。
(2)选择排序算法:通过比较相邻元素的大小,选择最小(或最大)的元素放到数组的起始位置,然后继续对剩余的元素进行排序。
三、实验反思1. 数组的定义与初始化在实验过程中,我深刻体会到了数组在编程中的重要性。
数组作为一种数据结构,可以有效地存储和操作一组具有相同数据类型的元素。
通过对数组的定义与初始化,我学会了如何创建一个符合实际需求的数组,并为数组元素赋初值。
2. 数组元素的引用与赋值在实验过程中,我学会了如何引用数组元素,以及如何为元素赋值。
这使我更加熟练地掌握了数组的使用方法,为后续的编程实践打下了基础。
c语言数组实验报告总结与思考
c语言数组实验报告总结与思考本次实验主要是关于C语言数组的学习和实践。
在实验中,我们通过对数组的定义、初始化、赋值、遍历等操作,深入了解了数组的特点和使用方法。
同时,我们也学习了如何利用数组解决实际问题,提高了编程能力和实践能力。
在实验中,我们首先学习了数组的定义和初始化。
数组是一种存储相同类型数据的集合,可以通过下标访问数组中的元素。
在定义数组时,需要指定数组的类型和大小。
数组的初始化可以在定义时进行,也可以在后续操作中进行。
在初始化时,可以使用花括号{}来指定数组中的元素,也可以使用循环语句来进行赋值。
接着,我们学习了数组的赋值和遍历。
数组的赋值可以通过下标来进行,也可以使用循环语句来批量赋值。
数组的遍历可以使用循环语句来实现,可以按照顺序遍历数组中的元素,也可以根据需要跳过某些元素或者只遍历部分元素。
在实验中,我们还学习了如何利用数组解决实际问题。
例如,我们可以使用数组来存储学生的成绩,然后计算平均分、最高分、最低分等统计数据。
我们还可以使用数组来存储一组数据,然后进行排序、查找等操作。
通过这些实际问题的练习,我们不仅掌握了数组的使用方法,也提高了编程思维和解决问题的能力。
在实验中,我们还遇到了一些问题。
例如,数组越界访问会导致程序崩溃,因此需要注意数组下标的范围。
另外,数组的大小需要根据实际需求进行设置,过大会浪费内存,过小会导致数据丢失。
在实际应用中,我们需要根据具体情况进行调整。
总的来说,本次实验让我们深入了解了C语言数组的特点和使用方法,提高了编程能力和实践能力。
通过实际问题的练习,我们也掌握了如何利用数组解决实际问题的方法。
在今后的学习和工作中,我们将继续深入学习和应用数组,提高自己的编程水平和解决问题的能力。
C语言实验五实验报告——数组
C语言实验五实验报告——数组一、实验目的:1.了解数组的概念和基本使用方法;2.掌握一维数组和二维数组的定义、初始化、赋值及基本运算实现;二、实验内容与方法1.理论部分数组是一些具有相同类型的数据元素按一定顺序排列组合而成的集合,在程序设计中它是一个变量列表,由若干相同数据类型的元素组成。
通常用一个名字和一个下标来表示,下标可理解为数组元素在数组中的位置编号。
数组的特点:数组是根据顺序排列的元素的集合;所有的元素必须是相同类型。
数组的定义方法:1. 定义数组,数组元素类型 + 数组名[元素的个数];2. 元素的个数必须是整型常量或变量,定义时必须明确、指定元素的个数;3. 声明一个数组时,除了要指定数组的类型外,还要指定数组的名称;4. 数组定义完后,需要对其中的每个元素进行初始化。
可以在定义数组时赋初值,也可以通过赋值符号,对数组元素逐个进行赋值。
数组的初始化:1. 元素个数之间用逗号分开,最后1个元素后无逗号;2. 支持部分元素初始化;3. 定义和初始化可以一步完成。
二维数组数组可分为一维和多维数组。
一维数组可以看作是包含多个元素的向量,而二维数组可以看做是包含了多个一维数组的矩阵。
二维数组有行号和列号,因此,它同样需要两个下标。
数组元素类型数组名[行数][列数];数组元素类型数组名[ ][ ] = { {元素1, 元素2, ……}, {元素1, 元素2, ……}, ……{元素1, 元素2, ……}}2.实验代码**问题1:**定义一个一维数组a,包含有5个元素,分别为1,2,3,4,5;**问题2:**定义一个一维数组a,接收用户从键盘输入的5个数值,分别打印存储的各个元素。
三、实验结果与分析结果分析:定义了一个5个元素的一维数组a,并初始化了各个元素的值,其元素分别为1,2,3,4,5.循环遍历一遍数组a,并打印数组元素。
程序执行正常。
3.针对问题3:定义一个二维数组a,由4行3列组成,每个元素初始化为0,打印存储的各个元素;程序运行结果如下:四、实验总结:该实验主要是通过对C语言数组的理论知识和基本操作进行练习,加深了对数组的了解和掌握。
数组实验实验报告
数组实验实验报告本文介绍的是一个数组实验的实验报告,介绍了实验的目的,实验内容、方法、结果以及分析,希望能为读者提供一些参考和帮助。
一、实验目的:1、了解数组的定义和基本概念;2、掌握数组元素的访问和操作;3、了解并掌握多维数组的定义和基本操作;4、掌握对数组进行排序的方法;5、学会用数组的方式实现一些常见的算法。
二、实验内容实验内容包括以下几个部分:1、数组定义和使用2、数组元素的访问和操作3、多维数组的定义和基本操作4、数组排序5、使用数组实现一些算法三、实验方法1、实验仪器和设备计算机、开发工具:Visual Studio2、实验步骤1)实现数组的定义和使用数组是一组有序的数据集合,可以是同类型,也可以是不同类型的数据。
可以通过定义数组可以简化程序的编写,提高程序的效率。
定义数组:通过关键字type或者var或者const,再加上数组名以及元素的类型等,来定义数组。
如下所示:type arrayName=arrayType[startIndex..endIndex] of dataType;(类型、数组名、数组元素的下标的范围、数据类型)vararrayNum:array[1..5] of integer;//定义5个元素的整数数组,并赋初值2)数组元素的访问和操作数组元素的访问:通过数组的下标来访问数组元素,下标从0开始,表示第一个元素,一次立1.如下所示:arrayName[index]:elementType; //数组名[下标]arrayNum[1]:=10;//将数组的第二个元素赋值成103)多维数组的定义和基本操作多维数组就是数组中包含了数组,具体的定义方式如下:typeMatrix=array[1..3,1..3] of integer;//定义一个3x3的整数矩阵varA,B: Matrix;A[1,1];//访问矩阵中的元素A[1,2]:=5;//给矩阵中的某个元素赋值4)数组排序排序是程序设计中最基本的算法之一,有很多种不同的排序算法。
C语言数组的应用实验报告
C语言数组的应用实验报告实验题目:C语言数组的应用一、实验目的:1.理解数组的定义和使用方法;2.学会利用数组实现基本算法;3.了解数组在实际应用中的常见场景及解决方法。
二、实验原理1.数组是一种数据结构,可以存储一组相同类型的数据;2.数组的元素可以通过索引(下标)来访问和修改;3.数组的长度必须在定义时确定,且长度不能改变。
三、实验内容本次实验共包含三个不同的实验题目,下面将逐一介绍每个实验的内容和具体步骤。
实验一:计算数组元素的和与平均值1.题目描述:编写一个程序,计算一个包含n个元素的整型数组中所有元素的和与平均值;2.实验步骤:1) 定义一个整型数组arr,并给数组赋初值;2) 声明一个整型变量sum,并将其初值设为0;3) 利用for循环遍历数组arr,将每个元素累加到sum中;4) 计算平均值avg,将sum除以数组长度;5)打印输出数组的和与平均值;6)用多组数据进行测试,验证程序的正确性。
实验二:查找数组中的最大值和最小值1.题目描述:编写一个程序,找出一个包含n个元素的整型数组中的最大值和最小值;2.实验步骤:1) 定义一个整型数组arr,并给数组赋初值;2) 声明两个整型变量max和min,并将它们的初值设为数组的第一个元素;3) 利用for循环遍历数组arr,对比每个元素与max和min的大小,更新max和min的值;4)打印输出数组的最大值和最小值;5)用多组数据进行测试,验证程序的正确性。
实验三:矩阵转置1.题目描述:编写一个程序,对给定的二维数组进行转置操作;2.实验步骤:1) 定义一个二维整型数组matrix,并给数组赋初值;2) 声明一个与matrix规模相反的二维整型数组transpose,并将其所有元素初始化为0;3) 利用嵌套for循环遍历matrix数组,将每个元素的行列进行互换,并赋值给transpose数组;4) 打印输出转置后的transpose数组;5)用多组数据进行测试,验证程序的正确性。
c语言实验7数组实验报告
实验报告课程名称程序设计实验项目名称数组班级与班级代码14级计算机科学与技术1班实验室名称(或课室) SS1-332专业计算机科学与技术任课教师学号:姓名:实验日期:2014年月日广东商学院教务处制一.实验目的1.熟练掌握一维数组、二维数组的定义、赋值、输入、输出方法。
2.熟练掌握字符数组和字符串函数的使用。
3.熟练掌握一位数组以及一位数组元素的存储关系。
4.熟练掌握一位数组和二维数组的使用以及在函数中的传递。
5.通过上机实践掌握与数组有关的算法。
二、实验内容上机题1输入并运行以下程序。
实验内容:用2个数组对第3个数组进行赋值#include<stdio.h>main(){int i,a[5],b[5],c[5];a[0]=2,a[1]=6,a[2]=4,a[3]=8,a[4]=9;b[0]=2,b[1]=7,b[2]=9,b[3]=5,b[4]=3;for(i=0;i<=4;i++){c[i]=a[i]*b[i];printf("c[%d]=%d\n",i,c[i]);}}实验步骤○1int a[5]:整型一维数组说明,a是数组名,也是数组的起始地址,该数组可以存储5个整数。
a[0]~a[4]也可以看成是变量标识字符,[]中的数值称为数组下标,下标从0开始。
○2数组赋值方法和一般变量一样。
例如,a[0]=2表示将2赋给a[0]。
运行结果上机题2 输入并运行以下程序。
实验内容:对不指明数组的数组进行赋值并用循环结构进行求和#include<stdio.h>main(){int sum,i;int a[]={5,8,4,6,4,3,8,2,4,5,6};sum=0;for(i=0;i<=10;i++)sum+=a[i];printf("sum=%d\n",sum);}实验结果实验小结○1对全部元素赋初值时,可以不指定数组长度,C编译系统自动根据初值个数来决定数组长度。
java数组实验报告
java数组实验报告《Java数组实验报告》在计算机编程中,数组是一种非常重要的数据结构,它可以存储多个相同类型的数据,并且可以通过索引来访问和操作这些数据。
在Java编程语言中,数组也是一个非常常用的数据类型,它可以用来解决各种问题,比如存储一组数字、字符串或者其他对象。
为了更好地理解和掌握Java数组的使用,我们进行了一系列的实验。
首先,我们学习了如何声明和初始化一个数组,以及如何访问和修改数组中的元素。
接着,我们实验了数组的遍历和排序,掌握了常见的数组操作技巧。
然后,我们深入研究了多维数组的使用,比如二维数组和三维数组,以及如何在程序中使用这些复杂的数据结构。
在实验过程中,我们发现了一些有趣的现象。
比如,在数组遍历和排序的过程中,我们可以通过循环和条件判断来实现各种不同的算法,从而对数组进行高效的操作。
另外,多维数组的使用也为我们提供了更多的可能性,可以用来表示更加复杂的数据结构,比如矩阵和图等。
通过这些实验,我们不仅深入理解了Java数组的使用方法,还提高了自己的编程技能。
我们相信,掌握了数组这一基础的数据结构,我们在以后的编程工作中一定会更加得心应手,能够更加高效地解决各种问题。
同时,我们也意识到,数组作为一种基础的数据结构,它的重要性不言而喻,我们应该不断地加强对它的学习和理解,以便更好地应用它来解决实际问题。
总之,通过这次实验,我们对Java数组有了更加深入的了解,也提高了自己的编程能力。
我们相信,通过不断地学习和实践,我们一定能够成为更加优秀的程序员,为社会的发展做出更大的贡献。
C语言实验五实验报告——数组
C语言实验五实验报告——数组实验五:数组实验目的:1.掌握数组的定义和使用;2.熟悉数组在函数中的传递;3.练习编写使用数组的程序。
实验原理:数组是一组相同类型的变量的集合,这些变量称为数组的元素。
数组的名字是一个指针常量,它存放的是数组首个元素的地址。
数组元素在内存中是连续存放的,可以通过下标访问每一个元素。
数组的定义:数组的定义格式为:数据类型数组名[数组长度];数组的初始化:数组可以在定义时进行初始化,也可以在定义之后通过赋值进行初始化。
数组作为函数参数:数组可以作为函数的形参进行传递,可以通过指针传递整个数组,也可以传递数组的部分元素。
实验步骤:1.编写一个程序,实现对学生成绩的管理。
要求如下:-使用一个数组保存学生的成绩;-能够动态添加学生的成绩,并显示添加成功的信息;-能够计算学生的平均成绩,并显示;-能够根据用户输入的学号查找对应学生的成绩,并显示。
2.编写一个程序,实现对一组整数进行排序。
要求如下:-首先自定义一个整数数组,数组元素个数为用户输入;-编写一个函数,实现对数组进行排序,要求使用选择排序算法;-在主函数中调用该函数,对数组进行排序后显示。
实验结果与分析:1.学生成绩管理程序运行结果如下:```-------学生成绩管理系统-------[1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:1请输入成绩:90添加成功![1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:1请输入成绩:85添加成功![1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:2平均成绩为:87.5[1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:3 [1]添加学生成绩[2]计算平均成绩[3]查找学生成绩[4]退出系统请输入选项:4退出系统。
```2.整数排序程序运行结果如下:```-------整数排序-------请输入待排序的整数个数:6请输入第1个整数:5请输入第2个整数:3请输入第3个整数:9请输入第4个整数:2请输入第5个整数:7请输入第6个整数:1排序前的整数序列为:539271排序后的整数序列为:123579 ```实验总结:通过本次实验,我深入理解了数组的原理和用法,并且掌握了数组在函数中的传递。
C语言实验报告《数组》
C语言实验报告《数组》《数组》实验报告实验目的:掌握C语言中数组的定义、初始化和使用方法,了解数组在程序中的作用和用途,熟悉数组的基本操作。
实验内容:1.数组的定义和初始化2.数组的基本操作-访问数组元素-修改数组元素-遍历数组-数组作为函数参数实验步骤:1.数组的定义和初始化定义一个整型数组,数组名为array,数组大小为10。
使用for循环将数组元素初始化为0。
2.数组的基本操作1) 访问数组元素:通过下标访问数组的元素,例如array[0]表示数组的第一个元素。
2)修改数组元素:通过下标将数组的元素修改为新的值。
3) 遍历数组:使用for循环遍历数组的每个元素,并输出其值。
4)数组作为函数参数:将数组作为函数的参数传递,并在函数内对数组进行操作。
实验结果:1.数组的定义和初始化:int array[10];for (int i = 0; i < 10; i++)array[i] = 0;}2.数组的基本操作:1)访问数组元素:int x = array[0]; // 访问第一个元素的值,即数组的第一个元素2)修改数组元素:array[0] = 1; // 将第一个元素的值修改为13)遍历数组:for (int i = 0; i < 10; i++)printf("%d ", array[i]); // 输出每个元素的值}4)数组作为函数参数:void printArray(int arr[], int len)for (int i = 0; i < len; i++)printf("%d ", arr[i]); // 输出数组的每个元素}}int maiint myArray[5] = {1, 2, 3, 4, 5};printArray(myArray, 5); // 将数组myArray作为参数传递给printArray函数return 0;}实验总结:通过本次实验,我们掌握了C语言中数组的定义和初始化方法,学会了访问数组元素、修改数组元素、遍历数组的操作,还了解了数组作为函数参数的使用。
数组应用的实验报告
一、实验目的1. 掌握数组的定义、声明、初始化和引用方法。
2. 熟悉数组在数据存储和操作中的优势。
3. 学习并实现一些常用的数组操作,如排序、查找、插入和删除等。
4. 提高编程能力,培养解决实际问题的能力。
二、实验环境1. 操作系统:Windows 102. 编译器:Visual Studio 20193. 编程语言:C++三、实验内容1. 一维数组的定义、初始化和引用2. 二维数组的定义、初始化和引用3. 数组元素的查找4. 数组元素的排序5. 数组元素的插入和删除四、实验步骤1. 一维数组的定义、初始化和引用(1)定义一个整型一维数组,并初始化前5个元素为1、2、3、4、5。
(2)使用循环遍历数组,输出所有元素。
(3)使用指针遍历数组,输出所有元素。
2. 二维数组的定义、初始化和引用(1)定义一个整型二维数组,并初始化前3行3列的元素。
(2)使用嵌套循环遍历数组,输出所有元素。
(3)使用指针遍历数组,输出所有元素。
3. 数组元素的查找(1)定义一个整型数组,并初始化前10个元素为1、2、3、4、5、6、7、8、9、10。
(2)编写一个函数,用于查找数组中是否存在指定的元素。
(3)在主函数中调用该函数,查找元素5在数组中的位置。
4. 数组元素的排序(1)定义一个整型数组,并初始化前10个元素为1、2、3、4、5、6、7、8、9、10。
(2)编写一个冒泡排序函数,用于对数组进行排序。
(3)在主函数中调用该函数,对数组进行排序,并输出排序后的结果。
5. 数组元素的插入和删除(1)定义一个整型数组,并初始化前10个元素为1、2、3、4、5、6、7、8、9、10。
(2)编写一个插入函数,用于在数组中插入一个新元素。
(3)编写一个删除函数,用于删除数组中的指定元素。
(4)在主函数中调用插入和删除函数,对数组进行操作,并输出操作后的结果。
五、实验结果与分析1. 一维数组的定义、初始化和引用实验结果:成功定义、初始化和引用了一维数组,并输出所有元素。
java实验报告--数组
java实验报告--数组Java实验报告 - 数组引言:Java是一种广泛应用于软件开发的编程语言,其强大的数组功能使得它成为处理大量数据的理想选择。
本实验报告将探讨Java中数组的基本概念、使用方法以及一些常见的应用场景。
一、数组的定义与初始化在Java中,数组是一种用于存储多个相同类型元素的数据结构。
数组可以存储基本数据类型(如整数、浮点数等)或者对象。
声明一个数组需要指定元素的类型和数组的名称,然后使用关键字"new"来创建数组对象。
二、数组的访问与操作通过索引(index)可以访问数组中的元素,索引从0开始计数。
例如,对于一个长度为10的整数数组,可以使用arr[0]来访问第一个元素,arr[1]来访问第二个元素,以此类推。
数组的长度可以通过arr.length来获取。
三、数组的遍历与排序遍历数组是指逐个访问数组中的元素。
常用的遍历方法有使用for循环和foreach循环。
对于需要对数组进行排序的情况,可以使用Java提供的排序算法(如快速排序、冒泡排序等)或者使用Arrays类中的sort方法。
四、多维数组除了一维数组,Java还支持多维数组。
多维数组可以看作是数组的数组,可以用于存储表格、矩阵等结构化数据。
在声明多维数组时,需要指定每一维的长度。
五、数组的应用场景1. 数据存储与处理:数组可以用于存储和处理大量数据,如学生成绩、员工工资等。
通过数组,可以方便地进行数据的查找、排序和统计等操作。
2. 图像处理:图像可以用二维数组表示,每个元素代表一个像素点的颜色值。
通过对数组的操作,可以实现图像的旋转、缩放等功能。
3. 算法实现:许多算法的实现都需要使用数组,如查找算法、排序算法等。
数组的高效访问和操作使得算法的实现更加简洁和高效。
六、实验案例:数组的查找与统计为了更好地理解数组的应用,我们设计了一个实验案例:数组的查找与统计。
假设有一个整数数组,我们需要找到其中的最大值、最小值、平均值以及某个特定元素的出现次数。
实验数组的实验报告
一、实验目的1. 掌握数组的基本概念和操作方法。
2. 熟悉C语言中数组的定义、初始化、赋值和引用。
3. 学会使用数组和循环结构进行数据处理。
二、实验环境1. 操作系统:Windows 102. 编译器:Visual Studio 20193. 编程语言:C语言三、实验内容1. 定义和初始化一维数组2. 访问和修改数组元素3. 使用数组进行数据处理4. 定义和初始化二维数组5. 访问和修改二维数组元素6. 使用二维数组进行数据处理7. 使用数组进行排序和查找四、实验步骤1. 定义和初始化一维数组```c#include <stdio.h>int main() {int array[5] = {1, 2, 3, 4, 5};int i;// 循环访问数组元素for (i = 0; i < 5; i++) {printf("array[%d] = %d\n", i, array[i]); }return 0;}```2. 访问和修改数组元素```c#include <stdio.h>int main() {int array[5] = {1, 2, 3, 4, 5};int i;// 修改数组元素array[2] = 10;// 循环访问数组元素for (i = 0; i < 5; i++) {printf("array[%d] = %d\n", i, array[i]); }return 0;}```3. 使用数组进行数据处理```c#include <stdio.h>int main() {int array[5] = {1, 2, 3, 4, 5}; int i, sum = 0;// 计算数组元素之和for (i = 0; i < 5; i++) {sum += array[i];}printf("sum = %d\n", sum);return 0;}```4. 定义和初始化二维数组```c#include <stdio.h>int main() {int array[3][3] = {{1, 2, 3},{4, 5, 6},{7, 8, 9}};int i, j;// 循环访问二维数组元素for (i = 0; i < 3; i++) {for (j = 0; j < 3; j++) {printf("array[%d][%d] = %d\n", i, j, array[i][j]); }}return 0;}```5. 访问和修改二维数组元素```c#include <stdio.h>int main() {int array[3][3] = {{1, 2, 3},{4, 5, 6},{7, 8, 9}};int i, j;// 修改二维数组元素array[1][1] = 10;// 循环访问二维数组元素for (i = 0; i < 3; i++) {for (j = 0; j < 3; j++) {printf("array[%d][%d] = %d\n", i, j, array[i][j]); }}return 0;}```6. 使用二维数组进行数据处理```c#include <stdio.h>int main() {int array[3][3] = {{1, 2, 3},{4, 5, 6},{7, 8, 9}};int i, j, sum = 0;// 计算二维数组元素之和for (i = 0; i < 3; i++) {for (j = 0; j < 3; j++) {sum += array[i][j];}}printf("sum = %d\n", sum);return 0;}```7. 使用数组进行排序和查找```c#include <stdio.h>// 交换两个元素void swap(int a, int b) {int temp = a;a = b;b = temp;}// 冒泡排序void bubbleSort(int array[], int length) {int i, j;for (i = 0; i < length - 1; i++) {for (j = 0; j < length - 1 - i; j++) { if (array[j] > array[j + 1]) {swap(&array[j], &array[j + 1]); }}}}// 查找元素int findElement(int array[], int length, int target) { int i;for (i = 0; i < length; i++) {if (array[i] == target) {return i;}}return -1;}int main() {int array[5] = {5, 2, 8, 3, 1};int i, index;// 冒泡排序bubbleSort(array, 5);// 输出排序后的数组for (i = 0; i < 5; i++) {printf("%d ", array[i]);}printf("\n");// 查找元素index = findElement(array, 5, 8);if (index != -1) {printf("Element 8 found at index %d\n", index);} else {printf("Element 8 not found\n");}return 0;}```五、实验结果与分析1. 通过定义和初始化一维数组,可以方便地存储和管理一系列具有相同数据类型的元素。
关于数组实验报告总结
一、实验目的1. 熟悉数组的基本概念和操作方法。
2. 掌握数组的初始化、赋值、遍历、排序、查找等基本操作。
3. 培养编程思维和解决问题的能力。
二、实验内容本次实验主要围绕数组展开,包括以下内容:1. 数组的定义与初始化2. 数组元素的赋值与遍历3. 数组的插入与删除4. 数组的排序5. 数组的查找三、实验步骤1. 数组的定义与初始化(1)定义一个整型数组,命名为arr,大小为10。
(2)使用循环初始化数组元素,从0到9。
2. 数组元素的赋值与遍历(1)使用循环遍历数组,打印出每个元素的值。
(2)将数组的第5个元素赋值为20。
3. 数组的插入与删除(1)在数组的第3个位置插入一个新元素,值为15。
(2)删除数组的第6个元素。
4. 数组的排序(1)使用冒泡排序算法对数组进行排序。
(2)使用选择排序算法对数组进行排序。
5. 数组的查找(1)使用线性查找算法查找数组中值为15的元素。
(2)使用二分查找算法查找数组中值为15的元素。
四、实验结果与分析1. 数组的定义与初始化实验结果:成功定义了一个大小为10的整型数组arr,并使用循环初始化了数组元素。
分析:通过定义数组并初始化,我们可以存储一组有序或无序的数据,方便后续操作。
2. 数组元素的赋值与遍历实验结果:成功遍历了数组,并修改了数组的第5个元素。
分析:通过赋值和遍历操作,我们可以对数组元素进行修改和查询,满足实际应用需求。
3. 数组的插入与删除实验结果:成功在数组中插入了一个新元素,并删除了指定位置的元素。
分析:插入和删除操作可以改变数组的大小和元素顺序,满足实际应用场景。
4. 数组的排序实验结果:使用冒泡排序和选择排序算法对数组进行了排序。
分析:排序操作可以使数组元素按照特定顺序排列,便于后续查找和操作。
5. 数组的查找实验结果:使用线性查找和二分查找算法成功找到了数组中值为15的元素。
分析:查找操作可以快速定位到指定元素的位置,提高程序效率。
五、实验总结通过本次实验,我们掌握了数组的基本概念和操作方法,包括定义、初始化、赋值、遍历、插入、删除、排序和查找等。
JAVA实验报告数组
JAVA实验报告数组实验名称:数组的操作和应用实验目的:掌握数组的定义和使用方法,了解数组在实际开发中的应用。
实验过程:1.数组的定义:数组是一种用来存储多个相同类型数据的容器。
在Java中,数组是引用类型。
数组的定义格式为:数据类型[] 数组名 = new 数据类型[数组长度]。
2.数组的初始化:数组初始化可以分为静态初始化和动态初始化两种方式。
静态初始化就是在定义数组时直接给出数据元素的初始值。
例如:int[] a = {1, 2, 3, 4, 5}。
动态初始化是在定义数组时只指定数组的长度,而不指定具体的元素值。
例如: int[] a = new int[5]。
3.数组的操作:数组的操作主要包括数组的读取和修改。
数组的读取使用数组名和索引的方式进行,索引从0开始,例如:int value = array[0]。
数组的修改也是通过索引来实现的,例如:array[0] = 10。
4.数组的遍历:数组的遍历是指依次访问数组中的每个元素,可以使用for循环或者foreach循环来实现。
for循环遍历数组的示例代码如下:```for (int i = 0; i < array.length; i++)System.out.println(array[i]);}```foreach循环遍历数组的示例代码如下:```for (int value : array)System.out.println(value);}```5.数组的应用:数组在实际开发中有广泛的应用场景,包括但不限于以下几个方面。
-存储一组数据:数组可以用来存储一组数据,例如存储学生成绩、商品价格等。
-统计数据:通过数组可以方便的统计一组数据的最大值、最小值、平均值等。
-排序数据:通过数组可以对一组数据进行排序,常见的排序算法有冒泡排序、插入排序、快速排序等。
-数据:通过数组可以快速一些值是否在数组中存在,常见的算法有顺序查找、二分查找等。
C语言实验五实验报告-数组
C语言实验五实验报告-数组C 语言实验五实验报告数组一、实验目的本次实验旨在深入理解和掌握 C 语言中数组的概念、声明、初始化以及基本操作。
通过实际编写代码,熟练运用数组解决实际问题,提高编程能力和逻辑思维能力。
二、实验环境操作系统:Windows 10开发工具:Visual Studio 2019三、实验内容1、数组的声明和初始化声明一维数组,如`int arr10;`。
初始化一维数组,包括全部初始化,如`int arr5 ={1, 2, 3, 4, 5};`,以及部分初始化,如`int arr5 ={1, 2};`。
声明二维数组,如`int arr34;`。
初始化二维数组,如`int arr23 ={{1, 2, 3},{4, 5, 6}};`。
2、数组元素的访问和操作使用下标访问数组元素,如`arr0` 。
对数组元素进行赋值和修改操作。
遍历数组,使用循环打印数组元素。
3、数组的应用实现数组元素的排序,如冒泡排序、选择排序等。
查找数组中的特定元素,如顺序查找、二分查找等。
四、实验步骤1、数组的声明和初始化打开 Visual Studio 2019,创建一个新的 C 语言项目。
在源文件中,编写以下代码来声明和初始化一维数组:```cinclude <stdioh>int main(){int arr110;int arr25 ={1, 2, 3, 4, 5};int arr35 ={1, 2};printf("未初始化的数组 arr1 的元素:\n");for (int i = 0; i < 10; i++){printf("%d ", arr1i);}printf("\n");printf("全部初始化的数组 arr2 的元素:\n");for (int i = 0; i < 5; i++){printf("%d ", arr2i);}printf("\n");printf("部分初始化的数组 arr3 的元素:\n");for (int i = 0; i < 5; i++){printf("%d ", arr3i);}printf("\n");return 0;}```编译并运行代码,观察输出结果,理解数组的声明和初始化方式。
数组实验报告实验分析
一、实验目的1. 理解数组的概念和基本操作。
2. 掌握数组的创建、初始化、访问和修改方法。
3. 学习数组的排序、查找和统计等常用算法。
4. 分析数组在实际应用中的优缺点。
二、实验内容1. 数组的创建与初始化2. 数组元素的访问与修改3. 数组的排序4. 数组的查找5. 数组的统计6. 数组在实际应用中的优缺点分析三、实验过程1. 数组的创建与初始化在实验中,我们首先学习了如何创建一个数组。
在C语言中,可以使用以下语句创建一个整型数组:int arr[10];这里创建了一个包含10个整数的数组,名称为arr。
接下来,我们学习了如何初始化数组。
初始化可以通过以下语句实现:int arr[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};这里初始化了一个包含10个整数的数组,并将前10个整数依次赋值给数组元素。
2. 数组元素的访问与修改访问数组元素可以通过以下语句实现:int value = arr[3]; // 获取数组第4个元素的值修改数组元素可以通过以下语句实现:arr[5] = 20; // 将数组第6个元素的值修改为203. 数组的排序在实验中,我们学习了冒泡排序算法。
冒泡排序是一种简单的排序算法,其基本思想是通过比较相邻的元素,将较大的元素交换到数组的后面。
以下是冒泡排序算法的C语言实现:void bubbleSort(int arr[], int n) {int i, j, temp;for (i = 0; i < n - 1; i++) {for (j = 0; j < n - i - 1; j++) {if (arr[j] > arr[j + 1]) {temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}}4. 数组的查找在实验中,我们学习了二分查找算法。
二分查找算法是一种高效的查找算法,其基本思想是将查找区间分为两半,每次查找时缩小查找范围。
关于数组的实验报告
关于数组的实验报告实验目的:1. 理解数组的概念和用法;2. 掌握数组的创建、初始化、赋值、访问等操作;3. 学会应用数组解决问题。
实验内容:1. 数组的定义数组是一种数据类型,它是由一系列元素组成的数据结构。
这些元素可以是同一种数据类型,也可以是不同的数据类型。
数组是在程序中连续存储的,可以通过单个变量名访问。
数组可以用于存储多个值,以便可以轻松地在程序中进行操作,而不需要单独操作每个值。
2. 数组的创建和初始化在 C++ 中,可以通过声明一个数组变量和指定其大小来创建数组。
数组的大小必须是常量或字面值。
下面是一个示例创建一个存储整数的数组:```int myArray[5];```数组 myArray 有五个元素,每个元素都是一个整数。
在创建数组时,可以通过初始化设置数组中的初始值。
可以将所有元素初始化为 0:```int myArray[5] = {0, 0, 0, 0, 0};```也可以仅指定一部分元素的值,并且未指定元素的值将自动为零:```int myArray[5] = {1, 2, 3};```3. 数组的访问和修改可以通过使用下标或索引访问和修改数组中的元素。
数组的第一个元素的下标为 0,第二个元素的下标为 1,以此类推。
要访问 myArray 数组的第三个元素:```int x = myArray[2];cout << x << endl; // 输出 3```也可以通过下标修改数组中的元素的值:```myArray[0] = 10;cout << myArray[0] << endl; // 输出 10```4. 数组的遍历可以使用 for 循环对数组进行遍历。
遍历 myArray 数组:```for (int i=0; i<5; i++) {cout << myArray[i] << endl;}```这将打印出数组中的所有元素。
实验报告_数组的应用
一、实验目的1. 理解数组的定义和特点。
2. 掌握数组的创建、初始化和赋值方法。
3. 熟悉数组的基本操作,如遍历、排序、查找等。
4. 了解数组在实际编程中的应用。
二、实验环境1. 操作系统:Windows 102. 编程语言:C/C++3. 开发环境:Visual Studio 2019三、实验内容1. 数组的定义和特点数组是一种有序的数据集合,用于存储具有相同数据类型的元素。
数组具有以下特点:(1)数组中所有元素具有相同的数据类型;(2)数组中的元素按照一定顺序排列;(3)数组的大小在创建时确定,一旦创建,大小不能改变;(4)数组可以通过下标访问其中的元素。
2. 数组的创建、初始化和赋值(1)创建数组在C/C++中,可以通过以下方式创建数组:int arr[10]; // 创建一个整型数组,包含10个元素int arr2[3][4]; // 创建一个二维整型数组,包含3行4列的元素(2)初始化数组在创建数组时,可以同时初始化数组元素:int arr[5] = {1, 2, 3, 4, 5}; // 初始化整型数组arr (3)赋值数组在创建数组后,可以对数组元素进行赋值:int arr[5];arr[0] = 1;arr[1] = 2;arr[2] = 3;arr[3] = 4;arr[4] = 5;3. 数组的基本操作(1)遍历数组可以通过循环结构遍历数组元素:for (int i = 0; i < 5; i++) {printf("%d ", arr[i]);}(2)排序数组可以使用冒泡排序算法对数组进行排序:void bubbleSort(int arr[], int n) {for (int i = 0; i < n - 1; i++) {for (int j = 0; j < n - i - 1; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}}(3)查找数组元素可以使用线性查找算法查找数组元素:int linearSearch(int arr[], int n, int x) {for (int i = 0; i < n; i++) {if (arr[i] == x) {return i;}}return -1;}4. 数组在实际编程中的应用(1)实现冒泡排序算法在C/C++中,可以使用数组实现冒泡排序算法,如上述代码所示。
数组应用实验报告
数组应用实验报告
《数组应用实验报告》
在计算机科学领域,数组是一种非常重要的数据结构,它可以存储多个相同类型的数据,方便进行管理和操作。
在本次实验中,我们将探讨数组的应用,并通过实验报告来展示其在不同场景下的使用情况。
实验一:数组的创建和初始化
在本实验中,我们首先学习了如何创建和初始化数组。
通过编写简单的代码,我们成功创建了一个包含整数类型的数组,并对其进行了初始化。
我们发现,数组的索引是从0开始的,这意味着我们可以通过索引来访问数组中的元素。
实验二:数组的遍历和操作
接下来,我们学习了如何遍历数组并对其进行操作。
我们使用循环结构来遍历数组中的每个元素,并进行相应的操作。
我们发现,使用数组可以方便地对一组数据进行统一的处理,比如求和、平均值等操作。
实验三:多维数组的应用
在这个实验中,我们学习了多维数组的应用。
通过创建二维数组,我们可以模拟二维空间中的数据结构,比如矩阵、图像等。
我们发现,多维数组可以方便地表示复杂的数据结构,并且可以通过多重循环来对其进行遍历和操作。
实验四:数组的应用案例
最后,我们通过实际案例来展示数组的应用。
我们使用数组来实现一个简单的学生成绩管理系统,通过输入学生的成绩,然后计算平均分、最高分、最低分等统计数据。
我们发现,数组的使用大大简化了数据的管理和操作,提高了程序的效率和可维护性。
综上所述,本次实验通过实验报告展示了数组在不同场景下的应用情况。
通过学习和实践,我们深刻理解了数组的重要性和灵活性,相信在今后的编程工作中,我们将能够更加熟练地运用数组来解决实际问题。
数组运用实验报告
一、实验目的1. 理解数组的概念和特点。
2. 掌握数组的创建、初始化、访问和修改方法。
3. 熟悉数组的常用操作,如排序、查找、插入和删除等。
4. 培养编程思维和问题解决能力。
二、实验环境1. 操作系统:Windows 102. 编程语言:C++3. 开发工具:Visual Studio 2019三、实验内容1. 数组的创建与初始化2. 数组的访问与修改3. 数组的排序4. 数组的查找5. 数组的插入与删除四、实验步骤1. 数组的创建与初始化(1)创建一个整型数组,名为array,大小为10。
(2)使用循环初始化数组,将数组元素值设置为1到10。
2. 数组的访问与修改(1)使用循环遍历数组,打印出数组中的每个元素。
(2)修改数组中第5个元素的值为20。
3. 数组的排序(1)使用冒泡排序算法对数组进行排序。
(2)打印排序后的数组。
4. 数组的查找(1)使用顺序查找算法查找数组中是否存在值为15的元素。
(2)如果找到,打印该元素的位置;如果没有找到,打印“未找到”。
5. 数组的插入与删除(1)在数组中第3个位置插入一个新元素,值为30。
(2)删除数组中第6个位置的元素。
五、实验结果与分析1. 数组的创建与初始化代码如下:```cpp#include <iostream>using namespace std;int main() {int array[10];for (int i = 0; i < 10; i++) {array[i] = i + 1;}return 0;}```2. 数组的访问与修改代码如下:```cpp#include <iostream>using namespace std;int main() {int array[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; for (int i = 0; i < 10; i++) {cout << array[i] << " ";}cout << endl;array[4] = 20;return 0;}```3. 数组的排序代码如下:```cpp#include <iostream>using namespace std;void bubbleSort(int array[], int length) {for (int i = 0; i < length - 1; i++) {for (int j = 0; j < length - 1 - i; j++) { if (array[j] > array[j + 1]) {int temp = array[j];array[j] = array[j + 1];array[j + 1] = temp;}}}}int main() {int array[10] = {5, 3, 8, 6, 2, 7, 4, 1, 9, 10}; bubbleSort(array, 10);for (int i = 0; i < 10; i++) {cout << array[i] << " ";}cout << endl;return 0;}```4. 数组的查找代码如下:```cpp#include <iostream>using namespace std;int main() {int value = 15;int found = 0;for (int i = 0; i < 10; i++) {if (array[i] == value) {found = 1;break;}}if (found) {cout << "找到元素,位置为:" << i << endl; } else {cout << "未找到" << endl;}return 0;}```5. 数组的插入与删除代码如下:```cpp#include <iostream>using namespace std;int main() {int insertValue = 30;int insertIndex = 3;int deleteIndex = 6;for (int i = 10; i > insertIndex; i--) {array[i] = array[i - 1];}array[insertIndex] = insertValue;for (int i = deleteIndex; i < 9; i++) {array[i] = array[i + 1];}for (int i = 0; i < 10; i++) {cout << array[i] << " ";}cout << endl;return 0;}```六、实验总结本次实验通过C++编程,学习了数组的基本操作,包括创建、初始化、访问、修改、排序、查找、插入和删除等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数组的应用电力实10 郝毅(201001000707)上机时间:周二上午一实验目的1 掌握数值型一维数组及二维数组的定义,初始化,以及输入输出的方法。
2 掌握用一维数组及二维数组实现的算法。
3 掌握字符型数组的定义,初始化,以及输入输出的方法。
4 掌握用字符型数组解决字符串问题的方法。
5 掌握常用字符串处理函数。
6 掌握用数组作为函数形参的相关语法规则和编程技巧。
7 掌握在VisualC++集成环境中调试与数组相关程序的方法。
二程序分析1Step1:定义数值型一维数组,及变量n,max,min,I,c;Step2:输入n的值,利用for语句,从键盘输入n个数据,存放在数组中。
Step3;利用for语句遍历n个数组元素,利用max存放最大值,利用min存放最小值;Step4:利用变量c将最大值与a[n-1]交换位置,并将min与a[0]交换位置;Step5;;利用for语句输出数组的前n个元素。
2题Step1:定义数值型一维数组,整型变量s;Step2:利用while语句输入一组数并存放在数组中,同时对该组数求和。
Step3:求出数组预案数的平均值,利用for语句遍历数组元素,并利用计数器计数其中大于等于平均值的实数个数。
Step4:输出计数器的值;3题Step1:定义数值型一维数组,及变量i;Step2:利用for语句遍历从1到100,将所有能被7或11整除的整数存放在数组中。
Step3:利用for语句输出数组元素十个数一行。
4题Step1:定义数值型一维数组,数组长度为50;变量s,i,c=51;Step2:利用while语句将一组互不相同且非0的整数存放在数组中,Step3:输入s的值。
Step4:利用for语句遍历数组元素,找出与s相同的元素,并记录其位置c=I,若不存在,则c=51;Step5:判断c的值,若小于51,则输出i的值,否则输出该数不存在;5题Step1,定义两个一维数组a[8],b[8],并初始化a[20]为{1,2,5, 1,1,3,7,0},及变量c,i,j;Step2:输入变量c的值。
Step3:利用for语句,遍历a[8],若a[i]!=c,则将a[i]存放在b[j]中;Step4: 利用for语句输出b[8]的值;二程序清单1#include"iostream.h"void main(){int a[50],n,i,max,min,s,t,j;cout<<"Input the n:";cin>>n;for(i=0;i<n;i++)cin>>a[i];max=a[0];min=a[0];for(i=0;i<n;i++){if(max<a[i]){max=a[i];s=i;}if(min>a[i]){min=a[i];t=i;}}j=a[n-1];a[n-1]=a[s];a[s]=j;j=a[0];a[0]=a[t];a[t]=j;for(i=0;i<n;i++)cout<<" "<<a[i];}2#include"iostream.h"void main(){float a[50],s=0,c=1,t=0;int i=0;cout<<"输入实数:";while(c>0){cin>>c;a[i]=c;s+=a[i];i++;}s=s/(i+1);for(i=0;a[i]!=0;i++)if(a[i]>s||a[i]==s)t++;cout<<"大于等于平均数的实数个数:"<<t;}3#include "iostream.h"void main(){int a[50],i,j=0,t;for(i=1;i<=100;i++)if((i%7==0)||(i%11==0)){a[j]=i;j++;}for(t=0;t<j;t++){cout<<" "<<a[t];if((t+1)%10==0)cout<<endl;} }4#include "iostream.h"void main(){int a[50],c=1,i=0,s,t=50;cout<<"输入数列:";while(c!=0){cin>>c;a[i]=c;i++;}cout<<"输入要查找的数:";cin>>s;for(i=0;a[i]!=0;i++){if(a[i]==s)t=i+1;}if(t==50)cout<<"该数不存在";else cout<<s<<"在数列中,是第"<<t<<"个数"; }第二次运行:5#include "iostream.h"void main(){int a[50],b[50],c=1,s,i=0,j=0,v; cout<<"输入数列:";while (c!=0){cin>>c;a[i]=c;i++;}cout<<"输入要查找的数:";cin>>s;for(i=0;a[i]!=0;i++)if(a[i]!=s){b[j]=a[i];j++;}cout<<"处理结果:";for(v=0;v<j;v++)cout<<" "<<b[v];}6#include "iostream.h"void main(){int a[5]={1,2,3,4,5};int i,s;for(i=0;i<=4;i++)cout<<" "<<a[i];s=a[4];for(i=4;i>0;i--)a[i]=a[i-1];a[0]=s;cout<<endl;for(i=0;i<=4;i++)cout<<" "<<a[i];}7#include "iostream.h";void main(){int a[11],b[11],i,j,s,t;cout<<"输入数列:";for(i=0;i<10;i++)cin>>a[i];for(i=0;i<9;i++)for(j=i+1;j<10;j++)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}cout<<"要插入的数:";cin>>s;for(i=0;i<10;i++)if(a[i]<s)break;for(j=0;j<i;j++)b[j]=a[j];b[j]=s;for(j=j+1;j<11;j++)b[j]=a[j-1];for(j=0;j<11;j++)cout<<" "<<b[j];}8#include "iostream.h"void main(){ int a[20],b[20],i=0,c=1,s=0,j,t=0; cout<<"输入数列:";while(c>0){cin>>c;a[i]=c;i++;}for(i=0;a[i]>0;i++){for(j=2;j<a[i];j++)if(a[i]%j==0)break;if(j>=a[i]&&a[i]!=1){b[t]=a[i];t++;s+=a[i];}} cout<<"素数和:\ns="<<s;for(i=0;i<t-1;i++)for(j=i+1;j<t;j++)if(b[i]<b[j]){c=b[i];b[i]=b[j];b[j]=c;}cout<<"\n素数:\n";for(i=0;i<t;i++)cout<<" "<<b[i];}9#include "iostream.h"void main(){int a[10],b,i=0,j,k,t;cout<<"输入整数:";cin>>b;while(b>0){a[i]=b%10;i++;b/=10;}for(j=0;j<i-1;j++)for(k=j+1;k<i;k++)if(a[j]<a[k]){t=a[j];a[j]=a[k];a[k]=t;} cout<<"重组后的数:";for(j=0;j<i;j++)cout<<a[j];}10#include"iostream.h";void main(){int a[2][3],b[2][3],c[2][3],i,j;cout<<"输入第一个矩阵:\n";for(i=0;i<2;i++)for(j=0;j<3;j++)cin>>a[i][j];cout<<"输入第二个矩阵:\n";for(j=0;j<3;j++)cin>>b[i][j];for(i=0;i<2;i++)for(j=0;j<3;j++)c[i][j]=a[i][j]+b[i][j]; cout<<"矩阵和:\n";for(i=0;i<2;i++){for(j=0;j<3;j++)cout<<" "<<c[i][j];cout<<endl;}}11#include "iostream.h" void main (){ int a[3][3],i,j;cout<<"输入矩阵:"<<endl;for(j=0;j<3;j++)cin>>a[i][j];cout<<"输出其转置"<<endl;for(i=0;i<3;i++){for(j=0;j<3;j++)cout<<" "<<a[j][i];cout <<endl;}cout<<"输出其上三角形部分:"<<endl; for(i=0;i<3;i++){for(j=0;j<i;j++)cout<<" ";for(j=i;j<3;j++)cout<<" "<<a[i][j];cout<<endl;}cout<<"输出其下三角形部分:"<<endl; for(i=0;i<3;i++){for(j=0;j<=i;j++)cout<<" "<<a[i][j];cout<<endl;}}12#include "iostream.h"void main(){ int a[3][4],i,j,max,min,b,c;cout<<"输入矩阵:\n";for(i=0;i<3;i++)for(j=0;j<4;j++)cin>>a[i][j];for(i=0;i<3;i++){max=a[i][0];b=0;for(j=0;j<4;j++)if(max<a[i][j]){max=a[i][j];b=j;}cout<<"第"<<i+1<<"行最大数:"<<max<<",在第"<<b+1<<"列"<<endl;}for(i=0;i<4;i++){min=a[0][i];c=0;for(j=0;j<3;j++)if(min>a[j][i]){min=a[j][i];c=j;}cout<<"第"<<i+1<<"列最小数:"<<min<<",在第"<<c+1<<"行"<<endl;}}13#include "iostream.h"void main(){int a[3][4],b[3][4],i,j;cout<<"输入矩阵:"<<endl;for(i=0;i<3;i++)for(j=0;j<4;j++)cin>>a[i][j];for(i=0;i<4;i++)for(j=0;j<3;j++)b[i][j]=a[j][i];for(i=0;i<4;i++){for(j=0;j<3;j++)cout<<" "<<b[i][j];cout<<endl;}}15#include "iostream.h"#include "string.h"void main(){ char a[20];int b[10]={0},i,j=0; cout<<"输入字符串:";cin>>a;for(i=0;i<strlen(a);i++)b[a[i]-'0']++;for(i=0;i<10;i++)cout<<"字符"<<i<<"的个数:"<<b[i]<<endl; }16#include "stdio.h"#include "string.h"void main(){ char a[30],c;int i,j;printf("输入字符串:");scanf("%s",a);for(i=0;i<strlen(a)-1;i++)for(j=i+1;j<strlen(a);j++)if(a[i]<a[j]){c=a[i];a[i]=a[j];a[j]=c;} printf("结果:%s",a);}17#include "stdio.h"#include "string.h"void main(){char a[20],b[20],c;int i,j=0,k=0;printf("输入字符串:");gets(a);for(i=0;i<strlen(a);i++)if(a[i]%3!=0){b[j]=a[i];j++;} b[j]=0;k=j;for(i=0;i<k-1;i++)for(j=i+1;j<k;j++)if(b[i]>b[j]){c=b[i];b[i]=b[j];b[j]=c;}printf("\n结果");printf("%s",b);}18#include "stdio.h"#include "string.h"void main(){char a[20],b[20];int m,i,j=0;printf("输入字符串1:");gets(a);printf("\n输入字符串2:");gets(b);printf("\n输入位置:");scanf("%d",&m);for(i=strlen(a)+strlen(b);i>=m+strlen(b);i--) a[i]=a[i-strlen(b)];for(i=m;i<m+strlen(b);i++){a[i]=b[j++];}printf("结果:");puts(a);}19#include "iostream.h" void main(){char a[10][10];int i,j,k,n,t=0,s=0; cout<<"输入层数n:"; cin>>n;for(k=1;k<=n;k++)for(i=k-1;i<2*n-k;i++) {for(j=k-1;j<2*n-k;j++) a[i][j]=k+'0';}for(i=0;i<2*n-1;i++) {for(j=0;j<2*n-1;j++) cout<<" "<<a[i][j];cout<<endl;}}20#include "iostream.h" float fun(int a[][5]) {int i,j;float s=0;for(i=0;i<5;i++)for(j=0;j<5;j++){s+=a[i][j];}s=s/25;return s;}void main(){ int a[5][5],i,j; float s;for(i=0;i<5;i++)for(j=0;j<5;j++)cin>>a[i][j];s=fun(a);cout<<endl<<"所有元素的平均值是"<<s; }21#include "stdio.h"#include "string.h"void fun(char a[],char b[],int n) {int i,j=0;for(i=n-1;i>=0;i--)b[j++]=a[i];b[j]=0;}void main(){char a[20],b[20];printf("输入字符串:");gets(a);fun(a,b,strlen(a));printf("转换后的字符串:%s",b); }22#include "stdio.h"#include "string.h"int fun(char a[]){int i=0;while(a[i]!=0)i++;return i;}void main(){char a[10][20];int b[10], i,j,max=0,c;for (i=0;i<10;i++){gets(a[i]);b[i]=fun(a[i]);}for(j=0;j<10;j++)if(max<b[j]){max=b[j];c=j;}printf("\n最长的字符串是%s",a[c]); }23#include "stdio.h"void fun(int a[],int b[],int n) {int i,j=0;for(i=n;i>=0;i--)b[j++]=a[i];}void main(){int a[10],b[10],i=0,j,c;a[0]=1;printf("输入数列:");while(c!=0){scanf("%d",&c);if(c!=0) a[i]=c;i++;}fun(a,b,i-2);printf("\n转换后的数列:");for(j=0;j<i-1;j++)printf(" %d",b[j]);}24#include "stdio.h"#include "string.h"void fun(int a[],char b[],int n){int i;for(i=0;i<n;i++){if(b[i]==' ')a[0]++;else if(b[i]>='0'&&b[i]<='9')a[1]++;elseif((b[i]>='a'&&b[i]<='z')||(b[i]>='A'&&b[i]<='Z'))a[2]++; else a[3]++;}}void main(){char b[10];int a[4]={0},i; printf("输入字符串:");gets(b);fun(a,b,strlen(b));printf("英文字母有:%d\n",a[2]); printf("数字有:%d\n",a[1]); printf("空格有:%d\n",a[0]); printf("其他有:%d\n",a[3]);}25for(j=i+1;j<n;j++){if(b[i]<b[j]){h=b[i];b[i]=b[j];b[j]=h;k=c[i];c[i]=c[j];c[j]=k;for(h=0;h<3;h++){k=a[i][h];a[i][h]=a[j][h];a[j][h]=k;}}}}void main(){ float a[5][3],b[5];int c[5],i,j,k;cout<<"输入学号和数学,英语,计算机的成绩:"<<endl;for(i=0;i<5;i++){cin>>c[i];for(j=0;j<3;j++)cin>>a[i][j];b[i]=fun(a[i],3);}fun1(a,b,c,5);cout<<" *****成绩单*****"<<endl;cout<<"学号数学英语计算机平均分"<<endl; for(i=0;i<5;i++){cout<<c[i];for(j=0;j<3;j++)cout<<" "<<a[i][j];cout<<" "<<b[i]<<endl;}}三经验总结通过本次上机我主要积累了如下经验:1 利用二维数组输出矩阵时,一定不要忘记在输出每一行后输出换行。