实验4数组姓名:杨广祺学号:1500810426实验日期:2015.11.231.实验目的和要求(1)掌握一维数组与二维数组的定义、使用及初始化方法。(2)学习数组作为函数参数的用法。(3)掌握字符数组和字符串函数的使用方法。(4)掌握与数组有关的常用排序算法,进一步理解模块化程序设计的方法。(5)掌握字符、字符串的输入/输出方法。(6)掌握字符数组的使用。(7)学会使用字符串的指针和指向字符串的指针变量。2.实验内容:实验指导书中的实验六、实验七3.实验步骤实验六数组部分:6-1:解决问题的算法或源程序代码:#includestdio.hmain(){inta[6];inti,ji;for(i=1;i=5;i++)a[i]=0;printf(请输入1-5的评价等级\n);for(i=1;i=20;i++){scanf(%d,&ji);if(!ji)break;++a[ji];}printf(\n结果如下\n);for(i=1;i=5;i++)printf(%4d\t%d\n,i,a[i]);}程序的运行测试结果截图(考虑各种情况下的运行结果):6-2:该程序完整的源程序代码是:#includeconio.h#includestdio.hmain(){intn,k,xx[20];inti,j,t;printf(\nPleaseenteranumber:);scanf(%d,&n);printf(\nPleaseenter%dnumbers:,n);for(i=0;in;i++)scanf(%d,&xx[i]);printf(\nPleaseenteranothernumber:);scanf(%d,&k);for(i=0;ik;i++){t=xx[0];for(j=1;jn;j++)xx[j-1]=xx[j];xx[n-1]=t;}printf(\nAftermoving:\n);for(i=0;in;i++)printf(%3d,xx[i]);printf(\n);}程序运行结果截图:6-3:该程序完整的源程序代码是:#includeconio.h#includestdio.hmain(){inti,a[100]={90,180,270,380,590,530,140,750,380},b[6];for(i=0;i=5;i++)b[i]=0;for(i=0;i=8;i++){if(a[i]100)b[0]++;if(a[i]=100&&a[i]=199)b[1]++;if(a[i]=200&&a[i]=299)b[2]++;if(a[i]=300&&a[i]=399)b[3]++;if(a[i]=400&&a[i]=499)b[4]++;if(a[i]=500)b[5]++;};printf(Theresultis:);for(i=0;i6;i++)printf(%d,b[i]);printf(\n);}程序运行结果截图:6-4.:解决问题的关键算法的源程序代码是:#includestdio.hmain(){inti,j,t,p,q,s,n,a[11]={6,3,42,23,35,71,98,67,56,38};for(i=0;i10;i++){for(j=i+1;j10;j++)if(a[i]a[j]){t=a[i];a[i]=a[j];a[j]=t;}printf(%3d,a[i]);}printf(\n输入一个数:\n);scanf(%d,&n);for(i=0;i10;i++)if(na[i]){for(j=9;j=i;j--)a[j+1]=a[j];break;}a[i]=n;for(i=0;i=10;i++)printf(%3d,a[i]);printf(\n);}程序运行结果截图:6-5:解决问题的关键算法的源程序代码是:程序运行结果截图:6-6(选作):我使用的算法为:请用文字描述一下程序运行结果截图:6-7(选作):我使用的算法为:程序运行结果截图:7-1该程序的功能是:将空格后面的字符都去除,保留空格前字符。程序运行结果截图:7-2:解决问题的关键算法的源程序代码是:#includestdio.h#includestring.hmain(){chara[20]=Hel;charb[]=lo;inti,j;for(j=0,i=strlen(a);b[j]!='\0';i++,j++){a[i]=b[j];}a[i]='\0';printf(%s\n,a);}程序运行结果截图:7-3:解决问题的关键算法的源程序代码是:#includestdio.hmain(){inta=0,b=0,c=0,i=0,j;chars[255];while((s[i]=getchar())!='!')i++;for(j=0;s[j]!='!';j++){if(s[j]='z'&&s[j]='a')++a;elseif(s[j]='9'&&s[j]='0')++b;else++c;}printf(小写字符数%d\n数字字符数%d\n其他字符数%d\n,a,b,c);getchar();}程序运行结果截图:7-4:解决问题的关键算法的源程序代码是:#includestdio.hmain(){inti,j;chars[]=Thisisaprogram;for(i=0;s[1]!='\0';i++){if(s[i]=='a'){j=i;break;}}printf(a首次出现的位置为%d\n,j);}程序运行结果截图:7-5:解决问题的关键算法的源程序代码是:#includestdio.hmain(){inti,j,k=0;chara[255];while((a[k]=getchar())!='@')k++;for(j=0;a[j]!='@';j++){if(a[j]='Z'&&a[j]='A'){a[j]+=32;}if(a[j]='w'&&a[j]='a')a[j]+=3;elseif(a[j]=='x'||a[j]=='y'||a[j]=='z')a[j]-=23;}printf(翻译结果:);for(i=0;a[i]!='@';i++)printf(%c,a[i]);printf(\n);getchar();}程序运行结果截图:7-6:解决问题的关键算法的源程序代码是:#includestdio.hmain(){inti=0;chars1[255],s2[255];printf(输入第一个字符串\n);scanf(%s,s1);printf(输入第二个字符串\n);scanf(%s,s2);while(1){if(s1[i]==s2[i]){i++;continue;}elsebreak;}printf(阿斯科码的差值为%d\n,s2[i]-s1[i]);}程序运行结果截图:4、实验小结这次实验量大题难,遇到了很多困难,应多查书,多跟同学交流,找到解决方法。