ImageVerifierCode 换一换
格式:DOCX , 页数:75 ,大小:44.28KB ,
资源ID:20689473      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20689473.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(算法设计方法与优化滕国文部分课后习题答案docx精选文档文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

算法设计方法与优化滕国文部分课后习题答案docx精选文档文档格式.docx

1、 printf(%d,%d,%d,c,b,a);void main() int a,b,c;input number:); scanf(%d%d%d,&a,&b,&c); fun(a,b,c);n2-2给定n个数,求这些数中的最大值。#includevoidmain()inti,j,temp,n;a1000;scanf(%d,n);for(i=0;i9;i+),ai);(j=0;jai+1)temp=ai;ai=ai+1;ai+1=temp;printf(%dn,an);2-3求1+2+3+100的和。#include int num,sum=0; for(num=1;num=100;num+

2、) sum+=num;,sum);2-4判断一个数n能否同时被3和5整数。int fun(int n) if(n%3=0&n%5=0) return n; else return 0;2-5将100至200之间的素数输出。#includemath.hint isp(int m) int i; for(i=2;=sqrt(m); if(m%i=0) return 0; return 1; int n; for(n=100;n=200;n+) if(isp(n) printf(%dt2-6求两个数m和n的最大公约数。int num(int m,int n) int r,t; if(mn) t=m;

3、m=n;n=t; r=m%n; while(r) m=n; n=r; r=m%n; return n; int x,y,s;input x and y:%d%dx,&y); s=num(x,y);,s);2-7使给定的一个4*4的二维数组转置,即行列互换。#include#define x 4 int axx;void main() void zhuan(int axx);int m,n; printf(please input %d nubbersn,x*x);for(m=0;mx;m+) for(n=0;n+) amn);n原数组: for(m=0; for(n=0;%5d,amn); z

4、huan(a);n转置后的数组: for(n=0;void zhuan(int axx) int c,d,e;for(c=0;cc+) for(d=c+1;d80)这个学生的学号是%d,这个学生的成绩是%dn,i*10+j+1,aij);return 0;2-9输出年份1990-2500中的所有闰年。void leap() int y; for(y=1990;y0) float x1,x2;input a and b and c: x1=(-b)+sqrt(b*b-4*a*c)/(2*a); x2=(-b)-sqrt(b*b-4*a*c)/(2*a); if(b*b-4*a*c=0&a!=0)

5、%.2f,%.2fn,x1,x2);flasen2-13.输出成绩等级“优秀”、“良好”、“中等”。“及格”,“不及格”。其中90分(含90分)以上为优秀,80-89分为良好,70-79分为“中等”,60-69分为“及格”,60分以下为不及格。main()scrnum;请输入考试成绩scrnum);if(scrnum=90)优秀nelse=70scrnum90)良好n=6070)及格nif(scrnum60)不及格!2-14. 给定一个正整数,求它的位数并分别输出每一位数字。 int n,i=0,k;input n:n); while(n! k=n%10;,k); n=n/10; i+;n%d

6、n,i);2-15. 输出所有水仙花数(水仙花数是指一个三位数,其各个数字立方和等于它本身)。 int a,b,c,i; for(i=100;=999; a=i/100; b=(i%100)/10; c=i%10; if(i=a*a*a+b*b*b+c*c*c)2-16. 求1!+2!+3!+.30!的值。2-17. 求Fibonacci数列前N个数。Fibonacci数列的特点;第一个和第二个数都为1,从第三个开始,每个数都等于其前两个数的和。#define N 100 int n,i,fN; f0=f1=1; fi=fi-1+fi-2; for(i=0;,fi);2-18. 把200以内不

7、能被3整除的数输出。200; if(i%3!2-19. 班级有20名小学生,有语文,数学,英语的成绩,求班级各科的平均分。i;floatavg1,avg2,avg3,s1=0,s2=0,s3=0,a20,b20,c20;20;%f%f%fai,&bi,&ci);s1+=ai;s2+=bi;s3+=ci;avg1=s1/20;avg2=s2/20;avg3=s3/20;%f,%f,%f,avg1,avg2,avg3);2-20. 输出100以内的所有素数,并且5个一行。 int n,k; for(n=1;100; k+; if(k%5=0) printf(2-21. 输出1000到10000以内

8、的可逆素数。#include int inverse(int n);int isPrimer(int n);main() for (i=1000;=10000;i+) if (isPrimer(i) if (isPrimer(inverse(i) int inverse(int n) int m=0,a; for (;n0;n/=10) a=n%10; m=m*10+a; return(m);int isPrimer(int n) int i,judge=1; for (i=2;=sqrt(n); if (n%i=0) judge=0; break; return judge;2-22. 两个

9、数之差为2的素数,称谓孪生素数。试输出5组孪生数。i,j;flag,n=0;a100;for(i=2;flag=1;for(j=2;if(i%j=0)flag=0;break;if(flag=1)an=i;n+;for(j=i+1;if(aj-ai=2)%d,aj);if(aj+1-aj=2),aj+1);i=3;2-23. 试输出1000到10000以内的对称数,并输出对称的个数。2-24.输入10个学生5门课的成绩,计算每个学生的平均分,每门课的平均分兵找出各门课最高分数所对应的学生。2-25. 输入一行字符,统计其中数字,空格,小写字母,大写字母以及其他符号的个数。 char s; in

10、t i=0,j=0,k=0,m=0,da=0,xiao=0;please input the stringn while(s=getchar()!=n) /*循环从键盘读入字符直到一行结束(输入回车)*/ if(sa)|(sZA) if(s)da+;)xiao+; i+; /*i存入字母数*/ else if(s= ) j+; /*j存入空格数,注意s=里面是有一个空格的*/ else if(s58&47)k+; /*k存入数字数*/ else m+; /*m存入其它符号数*/ 字符:%d 大写字母:%d 小写字母:%dn空格:%dn数字:%dn其它:,i,da,xiao,j,k,m); /*

11、打印行中的字母,空格,数字,其它字符数*/ 2-26. 任意给定n值,按如下螺旋的方式输出方阵:n=3时输出 1 2 3 8 9 4 7 6 5n=4时输出 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7Void spi(int n) int i=-1,j=0,k=n,a100100,r,s=1,t=1; while(s=n*n) for(r=0;rk;r+) i+=t; aji=s+; for(r=k;2*k-1; j+=t; k-; t=-t; for(j=0;%3d,aij);input a number spi(n);2-27. 输出魔方阵(魔方阵是它的每

12、一行,每一列和对角线之和均相等的方阵)如三阶魔方阵为: 8 1 6 3 5 7 4 9 2 int a5050,n,x,y,i,j,k;输入魔方阵的阶数n:n if(n%2=0) n+; for (i=1;=n; for (j=1; aij=0; i=1;j=(n+1)/2;aij=1; for (k=2;k=n*n;k+) i-;j+; if (in) i+=2;j-; if(in) j=1; if (aij!=0) i+=2; aij=k; printf(%3d if(j=n) printf( getchar();getchar();2-28编程打印形如下规律的n*n方阵例如下图:使左对角

13、线和右对角线上的元素为0,它们上方的元素为1,左方的元素为2,下方元素为3,右方元素为4,下图是一个符合条件的阶矩阵。012443第三章:累加法3-1编程求1-2+3-4+5-6+7-+99-100。i,s;for(i=1,s=0;if(i%2!s+=i;elses-=i;getch();3-21-1/2+1/3-1/4+-1/100void p2() float s=0; int p=-1; for(int i=1;101;i+) p*=(-1); s+=p*1.0/i;1-1/2+1/3-1/4+-1/100的结果是:%fn p2();3-3求100以内所有素数的和int fun(int m) for(int i=2;m; return 1;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1