C语言实验报告-数组_第1页
C语言实验报告-数组_第2页
C语言实验报告-数组_第3页
C语言实验报告-数组_第4页
C语言实验报告-数组_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验4数组姓名:学号:实验日期:实验目的和要求(1)掌握一维数组与二维数组的定义、使用及初始化方法。(2)学习数组作为函数参数的用法。(3)掌握字符数组和字符串函数的使用方法。(4)掌握与数组有关的常用排序算法,进一步理解模块化程序设计的方法。(5)掌握字符、字符串的输入/输出方法。(6)掌握字符数组的使用。(7)学会使用字符串的指针和指向字符串的指针变量。实验内容:实验指导书中的实验六、实验七实验步骤实验六数组部分:6-1:我使用的算法:定义一个数组s[i],用s[1]~s[5]代表5个等级,然后采用循环将20个评价分别对数组进行累加,即可得出结果程序的运行测试结果如下图所示(考虑各种情况下的运行结果):#include<stdio.h>voidmain(){ ints[6]; inti,n; for(i=1;i<=5;++i) s[i]=0; printf("请输入数据:\n"); for(i=1;i<=20;++i) { scanf("%d",&n); if(!n)break; ++s[n]; } printf("\n\n评价结果是:\n"); for(i=1;i<=5;++i) printf("%4d%d\n",i,s[i]);}6-2:该程序的功能是:将数组xx(有n个元素)的前k(k<n)个元素变为后k个元素,且两段元素顺序不变程序运行结果如下图所示:#include<conio.h>#include<stdio.h>voidmain(){ intn,k,xx[20]; inti,j,t; printf("\nPleaseenteranumber:"); scanf("%d",&n); printf("\nPleaseenter%dnumbers:",n); for(i=0;i<n;i++) scanf("%d",&xx[i]); printf("\nPleaseenteranothernumber:"); scanf("%d",&k); for(i=0;i<k;i++) { t=xx[0]; for(j=1;j<n;j++) xx[j-1]=xx[j]; xx[n-1]=t; } printf("\nAftermoving:\n"); for(i=0;i<n;i++) printf("%3d",xx[i]); printf("\n");}6-3:该程序的功能是:对数组a中n种商品价格进行统计,并将各个价格段的商品个数存入对应数组b中程序运行结果如下图所示:6-4.:我使用的算法为:先对10个数进行排序输出,再输入一个数,再与之前排序后的数进行比较,并插入其中程序运行结果如下图所示:#include<stdlib.h>intmain(){inta[10],b[11],i,j,t,k;printf("请输入10个整数:\n");for(i=0;i<10;i++){scanf("%d",&a[i]);}for(i=0;i<10;i++){for(j=0;j<9;j++){if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}}}for(i=0;i<10;i++){printf("%-5d",a[i]);}printf("\n");for(i=0;i<11;i++){b[i]=a[i];}printf("请输入一个整数k:\n");scanf("%d",&k);b[10]=k;for(i=0;i<11;i++){for(j=0;j<10;j++)if(a[j]>b[j+1]){t=b[j];b[j]=b[j+1];b[j+1]=t;}}printf("\n新数列是:\n");for(i=0;i<11;i++){printf("%-5d",b[i]);}printf("\n");return0;}6-5:我使用的算法为:比较数组s与数组str元素是否相同,相同则n+1,最后输出程序运行结果如下图所示:main(){ charstr[20],s; inti,n=0; printf("请输入字符串:\n"); gets(str); printf("输入需要统计的字符串s:\n"); s=getchar(); for(i=0;i<=20;i++) if(str[i]==s) n++; printf("%d\n",n-1);}6-6(选作):我使用的算法为:FORMTEXT请用文字描述一下程序运行结果如下图所示:6-7(选作):我使用的算法为:FORMTEXT请用文字描述一下程序运行结果如下图所示:7-1该程序的功能是:程序运行结果如下图所示:voidmain(){ chara[40],b[40]; inti,j; printf("Enterthestring:"); scanf("%s",a); i=j=0; while(a[i]!='\0') { if(!(a[i]>='0'&&a[i]<='9')) { b[j]=a[i];j++; } ++i; } b[j]='\n'; printf("%s",b);}7-2:我使用的算法为:FORMTEXT请用文字描述一下程序运行结果如下图所示:main(){ chara[20],b[20]; inti,j; printf("请输入一个字符串:\n"); gets(a); printf("请输入另一个字符串:\n"); gets(b); for(i=0;i<20;i++) { if(a[i]==0) break; } for(j=0;j<20;j++) { if(b[j]!=0) { a[i]=b[j]; } if(b[j]==0) break; i++; } a[i]='\0'; printf("%s",a);}7-3:我使用的算法为:FORMTEXT请用文字描述一下程序运行结果如下图所示:main(){ chara[100]; intb[3],i; for(i=0;i<3;i++) b[i]=0; printf("请输入一个字符串:\n"); gets(a); for(i=0;i<100;i++) { if(a[i]>='a'&&a[i]<='z') b[0]++; elseif(a[i]>='0'&&a[i]<='9') b[1]++; elseb[2]++; if(a[i]==0) break; } printf("小写字符:%-5d数字:%-5d其他字符:%-5d",b[0],b[1],b[2]);}7-4:我使用的算法为:FORMTEXT请用文字描述一下程序运行结果如下图所示:main(){ chara[20],b; inti; printf("请输入一个字符串:\n"); gets(a); printf("请输入一个字符:\n"); scanf("%c",&b); for(i=0;i<20;i++) if(a[i]==b) printf("首次出现的位置是:%d\n",i+1);}7-5:我使用的算法为:FORMTEXT请用文字描述一下程序运行结果如下图所示:main(){ inti,j,k=0;chars[255];while((s[k]=getchar())!='@')k++;for(j=0;s[j]!='@';j++) { if(s[j]<='Z'&&s[j]>='A') s[j]+=32; if(s[j]<='w'&&s[j]>='a')s[j]+=3; else if(s[j]=='x'||s[j]=='y'||s[j]=='z') s[j]-=23; }printf("译码后结果:");for(i=0;s[i]!='@';i++)printf("%c",s[i]);printf("\n");getchar();}7-6:我使用的算法为:FORMTEXT请用文字描述一下程序运行结果如下图所示:main(){ inti=0;charstr1[255],str2[255];printf("请输入一个字符串:\n");scanf("%s",str1);printf("请输入另一个字符串:\n");scanf("%s",str2);while(1) { if(str1[i]==str2[i]) { i++; continue; }

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论