数组的应用实验报告

合集下载

数组实验报告反思心得

数组实验报告反思心得

一、实验背景本次实验旨在通过学习数组的相关知识,掌握数组的定义、初始化、赋值、引用等方法,以及数组的操作和应用。

通过本次实验,我对数组有了更深入的理解,同时也对编程思维和算法设计有了更全面的提升。

二、实验过程1. 实验一:一维数组的定义与初始化实验过程中,我首先学习了如何定义一维数组,以及如何对数组进行初始化。

通过实验,我掌握了以下知识:(1)一维数组的定义格式:类型符数组名[常量表达式];(2)一维数组的初始化方法:在定义数组时,可以在方括号内指定数组的长度,并为数组元素赋初值。

2. 实验二:二维数组的定义与初始化在实验二,我学习了二维数组的定义与初始化。

通过实验,我掌握了以下知识:(1)二维数组的定义格式:类型符数组名[常量表达式1][常量表达式2];(2)二维数组的初始化方法:可以在定义数组时,指定数组的行数和列数,并为数组元素赋初值。

3. 实验三:数组元素的引用与赋值在实验三,我学习了如何引用数组元素,以及如何为元素赋值。

通过实验,我掌握了以下知识:(1)数组元素的引用方法:数组名[下标];(2)数组元素的赋值方法:使用赋值运算符“=”。

4. 实验四:数组的操作与应用在实验四,我学习了数组的操作与应用,包括冒泡排序、选择排序等。

通过实验,我掌握了以下知识:(1)冒泡排序算法:通过比较相邻元素的大小,将较大的元素交换到后面,直到整个数组有序。

(2)选择排序算法:通过比较相邻元素的大小,选择最小(或最大)的元素放到数组的起始位置,然后继续对剩余的元素进行排序。

三、实验反思1. 数组的定义与初始化在实验过程中,我深刻体会到了数组在编程中的重要性。

数组作为一种数据结构,可以有效地存储和操作一组具有相同数据类型的元素。

通过对数组的定义与初始化,我学会了如何创建一个符合实际需求的数组,并为数组元素赋初值。

2. 数组元素的引用与赋值在实验过程中,我学会了如何引用数组元素,以及如何为元素赋值。

这使我更加熟练地掌握了数组的使用方法,为后续的编程实践打下了基础。

c语言数组实验报告总结与思考

c语言数组实验报告总结与思考

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语言数组的应用实验报告实验题目: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数组实验报告

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数组的使用方法,还提高了自己的编程技能。

我们相信,掌握了数组这一基础的数据结构,我们在以后的编程工作中一定会更加得心应手,能够更加高效地解决各种问题。

同时,我们也意识到,数组作为一种基础的数据结构,它的重要性不言而喻,我们应该不断地加强对它的学习和理解,以便更好地应用它来解决实际问题。

总之,通过这次实验,我们对Java数组有了更加深入的了解,也提高了自己的编程能力。

我们相信,通过不断地学习和实践,我们一定能够成为更加优秀的程序员,为社会的发展做出更大的贡献。

C语言实验五实验报告——数组

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 ```实验总结:通过本次实验,我深入理解了数组的原理和用法,并且掌握了数组在函数中的传递。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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 利用二维数组输出矩阵时,一定不要忘记在输出每一行后输出换行。

相关文档
最新文档