高级语言程序设计实验5_数组(完美运行版).doc_第1页
高级语言程序设计实验5_数组(完美运行版).doc_第2页
高级语言程序设计实验5_数组(完美运行版).doc_第3页
高级语言程序设计实验5_数组(完美运行版).doc_第4页
高级语言程序设计实验5_数组(完美运行版).doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

高级语言程序设计实验报告实验序号:5 实验项目:数组 学号姓名专业、班级实验地点指导教师实验时间一、实验目的及要求1、掌握一维数组和二维数组的定义、赋值、使用和输入输出方法;2、掌握字符数组和字符串的使用;二、实验设备(环境)及要求使用Visual C+ 6.0;windows系列操作系统的环境。三、实验内容与步骤1输入若干个整数存放在一维数组中,根据此数组构造两个数组a和b,要求a中存放数组x中所有的正数,b中存放数组中所有的负数,0舍弃,最后分别输出数组a和b 。运行结构截图:2. 用筛法求11000之间的素数。eratosthenes筛法:1) 利用数组存放这1000个数;2) 挖掉第一个数1(令该数=0);3) 2没被挖掉,挖掉后面所有2的倍数;4) 3没被挖掉,挖掉后面所有3的倍数;5) 4被挖掉,不执行任何操作;6) 5没被挖掉,挖掉后面所有5的倍数;7) 直到最后一个数;8) 剩下的非0数就是素数。运行结构截图:3. 编写程序输入一个字符串,删除字符串中的所有数字字符后输出此字符串。【算法提示】(1)定义一个一维字符数组;(2)输入一串测试字符;(3)依次判断数组中字符是否为数字(即0且9);(4)若是则将后面所有字符依次往前移一位;(5)输出整个字符串。运行结构截图:410个小孩围成一圈分糖,老师分给第1个孩子10块,第2个孩子2块,第3个孩子8块,第4个孩子22块,第5个孩子16块,第6个孩子4块,第7个孩子10块,第8个孩子6块,第9个孩子14块,第10个孩子20块,然后所有的小孩同时将自己手中的糖分一半给右边的小孩,糖块数为奇数的人可向老师再要一块。问经过这样几次调整后大家手中的糖的块数都一样?每人各有多少块糖。(注:第i个小朋友的右边是第i-1个小朋友,第1个小朋友的右边是第10个小朋友)运行结构截图:5假设在2*10的二维数组中存放了数据,其中各行的元素构成一个整数,如第一行元素构成整数1234507000。编写程序比较两行元素构成的整数大小。(规则:从高位起逐个比对应位数,若每位均相等,则两数相等;若遇到第一个不相等的数字,则数字大者为大)例如:12345070001237426000运行结构截图:6输入一个5行5列的矩阵,计算该矩阵最外圈元素之和。运行结构截图:【选做题】7老虎机:假设有3*3个方格,编写程序,在程序运行后,在3*3个方格内随机显示符号三种符号“J、#、*”得分规则是在一条直线或斜线上有三个相同的图案则得一分,按y继续玩,每人玩三次,统计总得分。(其中J可以用1输出)运行结构截图:8【附加题】任意输入两个字符串,分别存放在a、b两个字符数组中。然后将较短的字符串放在a数组中,较长的字符串放在b数组中,并输出。附加2:输入奇数 n,输出nXn方阵。如n=5,输出:0 0 1 0 00 1 0 1 01 0 0 0 10 1 0 1 00 0 1 0 0运行结构截图:四、分析与讨论成 绩教师签名: 日期:附源程序清单:1. #include main()int a100,b100,x100,i,j=0,k,l=0;printf(请输入数组x的个数:);scanf(%d,&k);printf(请输入数组x中的整数,用空格隔开:);for(i=0;ik;i+)scanf(%d,&xi);for(i=0;i0)aj=xi;j+;else if(xi0)bl=xi;l+;printf(数组a:);for(i=0;ij;i+)printf(t%d,ai);printf(n数组b:);for(i=0;il;i+)printf(t%d,bi);printf(n);2. #include #include int main() int array1000; int i=0, iter=0; for(i=0;i1000;i+) arrayi=i+1;array0=0; iter=1; while(iter1000) if(arrayiter!=0) for(i=iter+1;i1000;i+) if( arrayi%arrayiter=0) arrayi=0; iter+;for(i=0;i1000;i+)if(arrayi!=0)printf(%dt,arrayi);printf(n);3. #includestdio.h#includestring.hmain()char a100;int i,j=0;printf(输入一串测试字符:n);scanf(%s,&a);for(i=0;i=0 & ai=9)aj=ai;j+;printf(输出字符串为:%s,a);printf(n);4. #include #define N 10main() int aN=10,2,8,22,16,4,10,6,14,20,bN,i,j; for(j=1;j+) for(i=9;i0;i-) if(ai%2=0&ai-1%2=0) bi-1=ai-1/2+ai/2; else if(ai%2=0&ai-1%2!=0) bi-1=(ai-1+1)/2+ai/2; else bi-1=(ai-1+1)/2+(ai+1)/2; if(a0%2=0&a9%2=0) b9=a9/2+a0/2; else if(a0%2=0&a9%2!=0) b9=(a9+1)/2+a0/2; else b9=(a9+1)/2+(a0+1)/2; for(i=0;i10;i+) ai=bi; for(i=0;i9;i+) if(ai=ai+1) continue; else i=11; if(i=9) printf(需要调整%d次n,j); printf(每个人各有%d块糖n,a0); break; 5. #include main() int n,m,k,a210,i=0; printf(请输入第一个数字:n); for(n=0;n10;n+) scanf(%d,&a0n); getchar(); printf(请输入第二个数字:n); for(m=0;m10;m+) scanf(%d,&a1m); getchar(); for(k=0;ka1k) printf(第一个数字较大.n); break; else if(a0ka1k) printf(第二个数字较大.n); break; else if(a0k=a1k)i+; if(i=9) printf(两数字相等.n);6. #include stdio.hvoid main()int sum=0,a55,i,j;printf(请输入5行5列矩阵数字:n);for(i=0;i5;i+)for(j=0;j5;j+)scanf(%d,&aij);for(i=0;i5;i+)sum+=a0i;for(i=0;i5;i+)sum+=ai0;for(i=0;i5;i+)sum+=a4i;for(i=0;i5;i+)sum+=ai4;sum=sum-a00-a04-a40-a44;printf(最外圈元素之和为%dn,sum);7. #include#include#define N 3main()int aNN,i,j,k=0,score=0; srand(time(0); while(getchar()=121)i=getchar(); for(i=0;iN;i+)for(j=0;jN;j+)aij=rand()%3; if(aij=0) printf(1); else if(aij=1) printf(*); else printf(#);printf(n);for(i=0;iN;i+)if(ai0=ai1 & ai1=ai2) score+; if(a0i=a1i & a1i=a2i) score+;if(a00=a11 & a11=a22) score+;if(a02=a11 & a11=a20) score+;if(k=2) printf(你的得分是:%d.n,score);break;else k+;8. 附加题:#include#includemain() char a100,b100; char str1100,str2100; scanf(%s%s,str1,str2); strcpy(a,strlen(str1)strlen(str2)?str1:str2); printf(a = %sn,a); printf(b = %sn,b);附加2:#includestdio.h#define N 100main() int aNN=0,b,c,i,j; printf(请输入3到39间的奇数:n); scanf(%d,&c); if(0c39 & c%2=1) b=c/2; for(

温馨提示

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

评论

0/150

提交评论