一维数组实验和答案.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一维数组实验和答案

数组中的常用算法:求和,求最大、最小值,查找,排序。 输入10个数输出其中最小的数。(反之最大数) #includestdio.h void main() { int a[10],i,min; printf(请输入10个数:\n); for(i=0;i10;i++) scanf(%d,a[i]); min=a[0]; for(i=1;i10;i++) { if(mina[i]) min=a[i]; } printf(最小的数为%d\n,min); } 输入10个数输出找出其中最大的数是第几个(查找)。 #includestdio.h void main() { int a[10],i,max; printf(输入10个数:\n); for(i=0;i10;i++) scanf(%d,a[i]); max=0; for(i=1;i10;i++) { if(a[max]a[i]) max=i; } printf(最大数是第%d个数为%d,max+1,a[max]); } 或: #includestdio.h void main() { int a[10],i,n,max; for(i=0;i10;i++) scanf(%d,a[i]); max=a[0]-1; for(i=0;i10;i++) { if(maxa[i]) { max=a[i]; n=i+1;} } printf(%d,%d,max,n); } 将一个数组逆序输出。 1.程序分析:用第一个与最后一个交换。 注意:例:输入1、3、5、7、9,a[0]=1,a[4]=9 输出9、7、5、3、1. a[4]=9,a[0]=1. #includestdio.h void main() { int a[5],i,t; printf(请输入5个数:\n); for(i=0;i5;i++) scanf(%d,a[i]); for(i=0;i5/2;i++) { t=a[i]; a[i]=a[5-1-i]; a[5-1-i]=t; } for(i=0;i5;i++) printf(%3d,a[i]); } 问题描述:输入10个数,保存在一个数组中,在数组中查找某个数,给出是否找到的 信息。如果找到了,要求输出该数在数组中所处的位置;如果找不到,输出“没有找到!”。 #includestdio.h #define N 10 void main() { int a[N],i,an; for(i=0;iN;i++) scanf(%d,a[i]); printf(请输入你要查的数\n); scanf(%d,an); for(i=0;iN;i++) { if(a[i]==an) break; } if(iN) printf(在数组中的第%d个位置,值为%d\n,i+1,an); else printf(没有找到); } 用起泡法排序,将7,3,5,1,2由小到大排序。 起泡法的思路:将相邻的两个数比较,将小的调到前头。 #includestdio.h void main() { int a[5]={7,3,5,1,2},i,j,t; for(i=0;i5-1;i++) { for(j=0;j5-1-i;j++) if(a[j]a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } } for(i=0;i5;i++) printf(%d,a[i]); } 6、问题描述: 如果一个数组中保存的元素是有序的(由大到小),向这个数组中插入一个数,使得插入后的数组元素依然保持有序。 int num[5]={23,45,60,67,88} #includestdio.h #define N 5 void main() { int i,j; int num[N+1]={23,45,60,67,88},in; printf(\n 请输入一个要插入的数:); scanf(%d,in); for(i=0;iN;i++) { if(num[i]in) break; } for(j=N;ji;j--) num[j]=num[j-1]; num[i]=in; printf(\n 插入后的数组元素:\n); for(i=0;iN+1;i++) printf(%d ,num[i]); printf(\n); }

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档