




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 / 8 数组实验报告 C语言实验报告 实验七 数组 1. 实验目的 熟练掌握一维数组、二维数组的定义、初始化和输入 /输出方法; 熟练掌握字符数组和字符串函数的使用; 掌握与数组有关的常用算法。 2. 实验指导 对任意一个一维型数组,从中找出数组元素的最大值和最小值并输出。 要求: 数组有十个元素; 使用 scanf函数实现数组元素的输入前给出必要的提示; 输出时,首先输出数组的十个元素,然后输出其最大值和最小值。 分析指导: 算法分析:首先定义一个数组,通过循环从键盘输入十个数组元素的值,再通过另一个循环判断数组元素的最大只和最小值; 根据分析情况编写程序: #include main int a10,i,max,min; printf; for scanf; max=a0; min=a0; 2 / 8 for ifmax=ai;if min=ai; for printf; printf; 运行程序,输入十个整数,如: 21 37 6 17 9 12 89 76 35 59 运行结果如下: 编写函数 cmpStr比较两个字符串 s1和 s2 的大小。 如果 s1s2,返回一个正数 ;s1=s2,返回 0; s1 不允许使用 strcmp 函数; 用 gets 函数在主函数中输入两个字符串; 实现触摸屏受托人函数,返回的正数或负数的绝对值应该是进行比较的两个字符传中相应字 符的 ASCII码的差值。 分析指导: 算法分析:两个字符串从第一个字符开始一一对应进行比较,直到不相等的那个字符,从而求得它们的 ASCII码的差值。比如, A与 C相比,由于 A 根据分析情况编写程序: #include int cmpstr int i,diff; i=0; while&)i+; ifdiff=0; else 3 / 8 diff=s1i-s2i; return diff; void main int z; char s1100,s2100; printf; /输入字符串 1 gets ; printf; /输入字符串 2 gets; z=cmpstr; /输出比较结果 printftween two strings is %dn,z); 查看运行结果如下: 重新输入两个字符串 meet,mood 运行结果如下: 再给定的字符串中查找指定的字符。 要求: 字符串采用直接初始化的方式处理; 通过scanf函数读入一个任意字符; 在字符串中查找该字符,如果存在该字符,输出该字符在字符串中的一次出现的位置,如果再给定的字符串中不存在该字符,则给出相应的说明信息。 #include void main int i; char ch; char s= program; printf; scanf; for if break; if printf; elseprintf; 输入一个英文字母 O运行程序如下: 再次输入一个英文字母 w运行程序如下: 4 / 8 首先输入一个大于二且小于十的整数 n,然后定义一个二维整 型数组 ,初始化该数组,讲述组中最大元素所在的行和最小元素所在的行对调。 要求: n*n 数组元素的值由 scanf 函数从键盘输入上机时间:周二上午 一 实验目的 1 掌握数值型一维数组及二维数组的定义,初始化,以及输入输出的方法。 2 掌握用一维数组及二维数组实现的算 法。 3 掌握字符型数组的定义,初始化,以及输入输出的方法。 4 掌握用字符型数组解决字符串问题的方法。 5 掌握常用字符串处理函数。 6 掌握用数组作为函数形参的相关语法规则和编程技巧。 7 掌握在 VisualC+集成环境中调试与数组相关程序的方法。 二 程序分析 1 Step1:定义数值型一维数组,及变量 n,max,min,I,c; Step2:输入 n 的值,利用 for 语句,从键盘输入 n个数据,存放在数组中。 5 / 8 Step3;利用 for 语句遍历 n 个数组元素,利用 max存放最大值,利用 min存放最小值; Step4:利用变量 c 将最大值与 an-1交换位置,并将 min与 a0交换位置; 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 的值。 6 / 8 Step4:利用 for 语句遍历数组元素,找出与 s相同的元素,并记录其位置 c=I,若不存在,则 c=51; Step5:判断 c的值,若小于 51,则输出 i 的值,否则输出该数不存在; 5题 Step1,定义两个一维数组 a8,b8,并初始化 a20为 1,2,5, 1,1,3,7,0,及变量 c,i, j; Step2:输入变量 c的值。 Step3:利用 for 语句,遍历 a8,若 ai!=c,则将ai存放在 bj中; Step4: 利用 for 语句输出 b8的值; 二程序清单 1 #include void main int a50,n,i,max,min,s,t,j; cout cinn; for cinai; max=a0;min=a0; for ifmax=ai;s=i; 7 / 8 ifmin=ai;t=i; j=an-1;an-1=as;as=j; j=a0;a0=at;at=j; for cout 2 #include void main float a50,s=0,c=1,t=0; int i=0; cout cinc; ai=c; s+=ai; i+; s=s/; for if
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论