c语言实验报告-数组

上传人:F****n 文档编号:98070000 上传时间:2019-09-08 格式:DOC 页数:9 大小:131.50KB
返回 下载 相关 举报
c语言实验报告-数组_第1页
第1页 / 共9页
c语言实验报告-数组_第2页
第2页 / 共9页
c语言实验报告-数组_第3页
第3页 / 共9页
c语言实验报告-数组_第4页
第4页 / 共9页
c语言实验报告-数组_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《c语言实验报告-数组》由会员分享,可在线阅读,更多相关《c语言实验报告-数组(9页珍藏版)》请在金锄头文库上搜索。

1、C语言实验报告 实验名称专业姓名学号班级指导老师实验七 数组1. 实验目的(1) 熟练掌握一维数组、二维数组的定义、初始化和输入/输出方法;(2) 熟练掌握字符数组和字符串函数的使用;(3) 掌握与数组有关的常用算法(如查找、排序等)。2. 实验指导(1) 对任意一个一维型数组,从中找出数组元素的最大值和最小值并输出。要求: 数组有十个元素; 使用scanf函数实现数组元素的输入前给出必要的提示; 输出时,首先输出数组的十个元素,然后输出其最大值和最小值。分析指导: 算法分析:首先定义一个数组,通过循环从键盘输入十个数组元素的值,再通过另一个循环判断数组元素的最大只和最小值; 根据分析情况编写

2、程序:#includemain()int a10,i,max,min;printf(please input ten integers:);for(i=0;i=9;i+) scanf(%d,&ai);max=a0;min=a0;for(i=1;imax) max=ai; if(aimin) min=ai;for(i=0;is2,返回一个正数;s1=s2,返回0;s1s2,返回一个负数,在主函数中调用该函数完成字符串的比较操作,并输出返回的值。要求: 不允许使用strcmp()函数; 用gets()函数在主函数中输入两个字符串; 实现触摸屏受托人()函数,返回的正数或负数的绝对值应该是进行比较的

3、两个字符传中相应字符的ASCII码的差值。分析指导: 算法分析:两个字符串从第一个字符开始一一对应进行比较,直到不相等的那个字符,从而求得它们的ASCII码的差值。比如,A与C相比,由于AC,应输出负数,由于A与C的ASCII码的差值为2,因此,应输出“-2”。同理,“And”和“Aid”比较,根据第二个字符比较结果,n比I大5,因此应输出5; 根据分析情况编写程序:#includeint cmpstr(char s1,char s2)int i,diff;i=0;while(s1i=s2i)&(s1i!=0)i+;if(s1i=0&s2i=0)diff=0;elsediff=s1i-s2i;

4、return diff; void main()int z;char s1100,s2100;printf(input the first string:);/输入字符串1gets (s1);printf(input the second string:);/输入字符串2gets(s2);z=cmpstr(s1,s2);/输出比较结果printf(the difference between two strings is %dn,z);查看运行结果如下:重新输入两个字符串meet,mood运行结果如下:(3) 再给定的字符串中查找指定的字符。要求: 字符串采用直接初始化的方式处理; 通过sca

5、nf函数读入一个任意字符; 在字符串中查找该字符,如果存在该字符,输出该字符在字符串中的一次出现的位置,如果再给定的字符串中不存在该字符,则给出相应的说明信息。#includevoid main()int i;char ch;char s= program;printf( 输入一个英文字母: );scanf(%c,&ch);for (i=0;si!=0;i+)if (si=ch)break;if (i7)printf(s%d=%cn,i,ch);elseprintf(No foundedn);输入一个英文字母O运行程序如下:再次输入一个英文字母w运行程序如下:(4) 首先输入一个大于二且小于十

6、的整数n,然后定义一个二维整型数组(n*n),初始化该数组,讲述组中最大元素所在的行和最小元素所在的行对调。要求: n*n数组元素的值由scanf函数从键盘输入(假定最大值最小值不在同一行上),然后输出该数组; 查找最大值最小值所在的行,将数组中最大元素所在的行和最小元素所在的行对调,并输出对调后的数组; 为直观起见,数组按n行n列的方式输出; 修改程序,对最大值与最小值可能出现在一行种的情况进行处理。#includemain()long matrix99,min,max,temp;int i,j,n,nMax=0,nMin=0;printf(nplease inpute n of matri

7、x:n);scanf(%d,&n);printf(nplease inpute elements of matrix(%d*%d):n,n,n);for(i=0;in;i+)for(j=0;jn;j+)scanf(%ld,&matrixij);min=max=matrix00;for(i=0;in;i+)for(j=0;jmax)max=matrixij;nMax=i;else if(matrixijmin)min=matrixij;nMin=j;for(j=0;jn;j+)temp=matrixnMaxj;matrixnMaxj=matrixnMinj;matrixnMinj=temp;pr

8、intf(nResult matrix:n);for(i=0;in;i+)for(j=0;jn;j+) printf(%5ld,matrixij);printf(n);输入一个数4,输入一个4*4的数组1 3 6 7 2 4 5 8 1 3 5 7 2 6 9 7运行程序如下:再次输入一个数字3,输入一个3*3的数组1 2 32 4 53 7 8运行程序如下:3 实验结论通过本次实验熟练的掌握一维数组、二维数组的定义、初始化和输入/输出方法以及字符数组和字符串函数的使用,还有就是掌握与数组有关的常用算法在能力与知识结构方面,要求学生应具有扎实的专业和日语语言基础,熟练掌握日语听、说、读、写、译的基本技能;了解日本社会及日本文化等方面的基本知识,熟悉日本国情,具有一定的日本人文知识及运用这些知识与日本人进行交流的能力。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号