ImageVerifierCode 换一换
格式:DOC , 页数:46 ,大小:115.04KB ,
资源ID:4576844      下载积分:5 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

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

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(2021年C语言程序设计第三版习题库答案.doc)为本站上传会员【二***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

2021年C语言程序设计第三版习题库答案.doc

1、C语言程序设计(第三版)习题库1、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算成果,输出时规定文字阐明,取小数点后两位数字。请编程序。 #include main()float r,h,C1,Sa,Sb,Va,Vb; scanf(_”%f”_,&r);scanf(”%d”,_&h_);; C1=2*3.14*r; Sa=3.14*r*r; Sb=4*Sa; Va=4*3.14*r*r*r/3; Vb=Sa*h; printf(_”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f”,Cl,Sa,Sb,Va

2、,Vb);2、输入一种华氏温度,规定输出摄氏温度。公式为 c=5(F-32)/9 输出规定有文字阐明,取位2小数。 #include main()float F,c; scanf(%f,&F); _c=5*(F-32)/9_;printf(c=%.2f,c); 3、有一函数: 写一程序,输入x值,输出y值。 #include main()int x,y; printf(输入x:); scanf(%d,&x); if(x1) /* x1 */ y=x; printf(x=%3d, y=x=%dn,x,y); else if (_x10_) /* 1x-10 */ _y=2*x-1_; print

3、f(x=%3d, y=2*x-1=%dn,x,y); else /* x10 */ y=3*x-11; printf(x=%3d, y=3*x-11=%dn,x# include stdio.hmain() int x,y; scanf(%d,&x); if(x=1 & x10) y=2*x-1; else y=3*x-11; printf(%d,y);# include stdio.hmain() int x,y; scanf(%d,&x); if(x=1 & x10) y=2*x-1; else y=3*x-11; printf(%dn,y);# include stdio.hmain()

4、 int x,y; scanf(%d,&x); if(x=1 & x10) y=2*x-1; else y=3*x-11; printf(%d,y);scanf(%d,&x); if(x=1 & x10) y=2*x-1; else y=3*x-11; # include stdio.hmain() int x,y; scanf(%d,&x); if(x=1 & x10) y=2*x-1; else y=3*x-11; printf(%d,y);,y); 4、给定一种不多于5位正整数,规定: 求它是几位数;按逆序打印出各位数字。例如原数为321,应输出123。 #include main()

5、long int num,m=0; int i=0; scanf(%ld,&num); while(num0) i+; /*记录长度*/m=m*10+num%10; num =num/10;printf(数字长度为:%d,i); printf(逆序数字为:%dn,m); 5、如下程序实现功能:求三个数最大值#includemain() int a,b,c,max; scanf(%d %d %d,&a,&b,&c); if(ab) if(ac) max=a; else max=c; else if(bc) max=b; else max=c; printf(max= %d,max);#inclu

6、de main() int x,y,z,t=0; scanf(%d %d %d,&x,&y,&z); if(xy) t=y;y=x;x=t; if(xz) t=z;z=x;x=t; if(yz) t=z;z=y;y=t; printf(%dn,z); 6、输入两个正整数m和n,求其最大公约数和最小公倍数。 /*枚举法*/#includemain() long m,n,i=1,j,s; scanf(%ld,%ld,&m,&n); for(;i=m&i=n)j=m; else j=n; for(;!(j%m=0&j%n=0);j+); printf(s=%ld,j=%ldn,s,j); #incl

7、ude main()int a,b,k,temp,i,p;scanf(%d,%d,&a,&b); if(ab) temp=b; else temp=a; for(i=2;i=temp;i+) if(a%i=0 & b%i=0) k=i; printf(%dn,k); p=a*b/k; printf(%dn,p); /*辗转相除*/#includemain()int m,n,k,j,p,r=1;scanf(%d,%d,&m,&n);k= mn?m:n;j= mn?n:m;dor=k%j; k=j;j=r; while(r!=0);printf(%d,%d,k,m*n/k);/*重复减法*/#in

8、cludemain()int m,n,k,j,p,r=1;scanf(%d,%d,&m,&n);k= mn?m:n;j= mn?n:m;dop=k-j; if(jp) k=j; j=p; else k=p; while(p!=0);printf(%d,%d,k,m*n/k);7、输入一行字符,分别记录出其中英文字母、空格、数字和其她字符个数。 #includestdio.h main() char c;int i=0,j=0,k=0,l=0; while(c=getchar()!=n) if(c=A&c=a&c=0&c=9) j+; /数字记录else if(c= ) k+; /空格记录els

9、e l+; printf(i=%d,j=%d,k=%d,l=%dn,i,j,k,l); 8、求Sn=a+aa+aaa+aaaaa(有n个a)之值,其中a是一种数字。例如:2+22+222+2222+22222(n=5),n由键盘输入。 #include main() int a,n; long b=0,sum=0; scanf(“%d %d”,&a,&n); for (i=1;i=n;i+) b = b*10+a; sum =sum+b; printf (“%ld”,sum);9、打印出所有水仙花数,所谓水仙花数是指一种三位数,其各位数字立方和等于该自身。例如:153是一种水仙花数,由于153

10、=13+53+33。 【程序1】#includemain()int i,m,n,k;for(i=100;i1000;i+)m=_i%10_; n=_ i/10%10_; k=i/100; if(_m*m*m+n*n*n+k*k*k=i_) printf(%5d,i);【程序2】#includemain()int i,a,n,s;for (i=100;i0) a=_n%10_; s+=a*a*a; n /=_10_; if (_s=i_) printf(“%d”,i);10、一种数如果正好等于它因子之和,这个数就称为完数。例如,6因子为1、2、3,而6=1+2+3,因而6是完数。编程序找出100

11、0之内所有完数,并按下面格式输出其因子: 6itsfactorsare1、2、3 #include main() int a,i,m; for (a =1;a=1000;a+) for (_i=1,m=0_;i = a/2;i+) if (!(a%i) _m+=i_; if (m=a) printf(“%4d”,a); 11、运用:p/4=1-1/3+1/5-1/7+.级数求p值,直到最后一项绝对值不大于10-6为止。求绝对值函数为fabs()。#_include_#includemain() int i=1,flag=1; double sum=0.0,s; do s=_1.0/(2*i-1

12、)_; sum+=s*flag; i+; _flag=-flag_; while(_fabs(s)1e-6_);/*/printf(pi=%f,_4*sum_);11、有一分数序列:2/1,3/2,5/3, 求出这个数列前20项之和。 #include#define N 20main() int i=1;double x=1,y=2,sum=0; while(_i=20_) sum=sum+_y/x_;y = _x+y_;x = _y-x_;i+; printf(%fn,sum);12、一球从100米高度自由下落,每次落地后返回原高度一半,再落下。求它在第10次落地时共通过多少米?第10次反弹

13、多高?#include main() int i,n=10;double h=100,s=100; for(i=2;i=n;i+) h*=_0.5_; s=_s+h*2_; printf(s=%f,h=%fn,s,h); 13、猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还但是瘾,又多吃了一种。第二天早上又将剩余桃子吃掉一半,又多吃一种。后来每天早上都吃了前一天剩余一半零一种。到第10天早上想再吃时,见只剩余一种桃子了。求第一天共摘多少桃子。 #include #define N 10main() int i=1,sum=1; while(i+N)sum=_(sum+1)*2_; p

14、rintf(sum=%dn,sum); 14、用迭代法求 。求平方根迭代公式为: 规定先后两次求出得差绝对值少于0.00001。 #include #include main() float x0,x1,a; scanf(%f,&a); x1=a/2; do x0=x1;x1=_(x0+a/x0)/2_; while(_x11e-5_); printf(%gn,x1); 15、用牛顿迭代法求方程在1.5附近根。 #include #include _#define f(x) 2*x*x*x-4*x*x+3*x-6 main() double x,y;x=_1.5_; doy = f(x); x

15、 = x - y/(6*x*x-8*x+3); while(fabs(y)1e-6); printf(x=%.3fn,x); 16、用二分法求方程在(-10,10)之间根 #include #include #define f(x) 2x*x*x-4*x*x+3*x-6main() double x1=-10,x2=10,x,y;do x=(x1+x2)/2; y=f(x); if(y1e-6);printf(x=%gn,x); 17、如下程序功能是:输入一种百分制成绩,输出一种五级制成绩级别。例如 输入75,输出 C。请完毕填空#includemain() int score; scanf(

16、_%d_,&score); switch(_score/10_) case 1:case 2:case 3:case 4:case 5:printf(“grade En”);_break_; case 6:printf(“grade Dn”);break;case 7:printf(“grade Cn”);break;case 8:printf(“grade Bn”);break;case 9:printf(“grade An”);break; _default_:printf(Error input!n); 18、该程序功能:对x=1,2,.,10,求f(x)=x*x-5*x+sin(x)最

17、大值。#include #include #define f(x) x*x-5*x+sin(x)void main() int x;float max; _max=f(1)_; for(x=2;x=10;x+) _if(maxf(x) max=f(x)_; printf(%fn,max);19、程序功能:输入整数a和b值,若a2+b2不不大于100,则输出a2+b2百位以上数字,否则输出两数之和。#includemain()int a,b,s; scanf(%d%d,&a,&b); s=_a*a+b*b_; if(s100) printf(%d,_s/100_); else printf(%d

18、,_a+b_);20、有1020个西瓜,第一天卖一半多两个,后来每天卖剩余一半多两个,如下程序记录卖完所需天数。#include main() int day,x1,x2; day=0;x1=1020; while(_x10_) x2=_x1/2-2_; x1=x2;day+ printf(“day=%d”,day);21、找出整数所有因子#include main()int i,x;scanf(“%d”,&x);i=1;for ( ;_i=x/2_;) if (x%i=0) printf(%d”,i); i+;22、记录取数字0-9可以构成多少个各位上数字没有重复3位偶数。#include

19、main() int n=0,i,j,k; for (i = 1;i = 9;i+) for (k = 0;k = 8;_k+=2_) if (k != i) for (j = 0;j = 9;j+) if (_j!=i&j!=k_) n+;printf(“n=%dn”,n);23、用100元换成1、2、5元所有兑换方案。#include main() int i,j,k,l=0; for (i = 0;i=20;i+) for (j =0;j=50;j+) k= _(100-i-2*j)/5_; if (_i+j*2+k*5=100_) printf(“%2d %2d %2d”,i,j,k)

20、; l = l + 1; if (l%5=0) printf(“n”); 24、输出1-100之间满足每位数乘积不不大于每位数和数#include main() int n,k=1,s=0,m; for (n=1;n0_) k *=m%10; s+=m%10; _m/=10_; if (ks) printf(“%d”,n);25、从3个红球、5个白球、6个黑球中任意取出8个球,且其中必要有白球,输出所有也许方案。#include main() int i,j,k; for (i=0;i=3;i+) for (_j=1_;j=0_) printf(“%3d %3d %3dn”,i,j,k); 2

21、6、如下程序功能是:判断一种四位数与否满足这样条件:它9倍刚好是它反序数。反序数是指整数各个位上数字逆序所形成整数。请完毕程序填空。#includemain()int i,a,b,c,d,m;for(i=1000;i+) a=_i%10_; b=i/10%10; c=i/100%10; d=i/1000; m=_a*1000+b*100+c*10+d_; if(_m=i*9_) _break_; printf(i=%d,i);27、如下程序完毕两整数互换。#include main() int a,b; printf(“请依次输入a,b值:”); scanf(“%d,%d”,_&a,&b_);

22、 a=a+b; _b=a-b_; _a=a-b_; printf(“互换后:a=%d,b=%d”,a,b);28、如下程序功能是判断输入年份与否为闰年,若是则输出”yes”,否则输出”No”。#include main() int year; scanf(“%d”,&year); if (_year%400=0|year%4=0&year%100!=0_) printf(“yes”); else printf(“No”);29、如下程序运用冒泡排序法对输入10个数进行排序。#include #define N 10void main() int aN; int i,j,t; printf(in

23、put 10 numbers :n); for (i=0;iN;i+) scanf(%d,_&ai_); printf(n);for(j=0;jN-1;j+) for(i=0;iai+1_) t=ai;ai=ai+1; ai+1=t; printf(the sorted numbers :n); for(i=0;iN;i+) printf(%d ,ai); printf(n);30、用筛法求100之内素数。筛法素数思想是:1、取最小数2,并声明它是素数,同步筛去它及它倍数。2、取未筛去数中最小数,并声明它是素数,同步筛去它及它倍数。3、重复环节2至筛中无数,得到所有素数。#include #d

24、efine M 100 / 范畴 #define N (M+1)/2) / 奇数个数void main( ) int i,j,aN; a0 = 2; for(i=1;iN-1;i+) /* 初始数组实现第一步筛选 */ ai = 2*i+1; for(i=1;iN-1;i+) /* 第二步筛选 */ if(_ai!=0_) for(j=i+1;jN;j+) if(_aj%ai=0_) /* 倍数时置零筛去 */ aj=0; printf(nThe primer are 2-%d:n,M); for(i=0,j=0;iN;i+) /* 显示得到素数 */ if(_ai!=0_) printf(%

25、5d,ai); if(+j)%10=0) /* 十个数换行 */ printf(n); getch();31、用选取法对10个整数从小到大排序。 #include #define N 10main() int aN,i,j,k,t; for (i=0;iN;i+) scanf(“%d”,&ai); for (i=0;iN-1;i+) k=_i_; for(j=i+1;jN;j+) if(ajak_) t=ak;ak=ai;ai=t; for(i=0;iN;i+) printf(“%d”,ai);32、求一种NN矩阵主对角线元素、次对角线之和。#define N 3#include main()

26、 int i=0,j=0,aNN,s1=0,s2=0; for(i=0;iN;i+) for(j=0;jN;j+) scanf(%d,&aij); for(i=0;iN;i+) for(j=0;jN;j+) if(_i=j_) s1+=aij; /主对角线 if(_i+j=N-1_) s2+=aij; /次对角线 printf(s1=%d,s2=%dn,s1,s2);33、已有一种已排好数组今输入一种数规定按本来排序规律将它插入数组中。#define N 10#include main() int i,t,aN=1,7,8,17,23,24,59,62,101; scanf(%d,&t); f

27、or(i=N-2;i0;i-) if(tai) _ai=ai-1_; else break;ai+1= _t_;for(i=0;i10;i+) printf(%5d,ai); 34、将一种数组值按逆序重新存储,例如,本来顺序为:8,6,5,4,1。规定改为:1,4,5,6,8。 #include #define N 11main() int i,aN,tmp; for(i=0;iN;i+) scanf(%d,&ai); for(i=0;_iN/2_;i+) tmp=ai;ai= _aN-i-1_;_aN-i-1_=tmp;for(i=0;iN;i+)printf(%5d,ai); 35、打印“

28、魔方阵”,所谓魔方阵是指这样方阵,它每一行、每一列和对角线之和均相等。例如,三阶魔方阵为 8 1 6 3 5 7 4 9 2 规定打印出由1n2自然数构成魔方阵。 #define N 3#include main( ) int i,j,k,aNN;/* 初始化魔方阵置为0,作为有无数字判断*/for(i=0;iN;i+) for(j=0;jN;j+) aij= _0_;j=N/2;a0j=1;/* 存储第一种数字 */* 存储2n*n */for(k=2;k=N*N;k+) i-; / 数存储前一数行数减1、列数加1 _j+=1_;if (i N-1) /到达右上角位置 i=i+2; j-;

29、else if(iN-1) j=0; /上一数列数为n-1时,下一数列数为0 if(_aij!=0_) /若下一数位置上已有数字, /则下一数存到上一种数行数加1位置 i=(i+2)%N; j=(j -1 + N)%N; aij= _k_; / 填数for(i=0;iN;i+) /输出魔方阵 printf( ); for(j=0;jN;j+) printf(%4d,aij); printf(nn);36、找出一种二位数组中鞍点,即该位置上元素在该行上最大,在该列上最小,也也许没有鞍点。 #include #define M 5#define N 4main() int aMN,i,j,x,y,

30、k,max,min;/x,y分别是用来记录鞍点位置 int flag=0; /用于批示与否存在鞍点for(i=0;iM;i+)for(j=0;jN;j+)scanf(%d,&aij);for(i=0;iM;i+)max=ai0;y=0;/先默认第一种数是最大值for(k=1;kN;k+)if(maxaik) y=k; _max=aik_; min=aiy;x=i;/先默认第一种数是最小值 for(k=0;kaky) x=k; _min=aky_; if(_i=k_) printf(a%d%d=%d 是鞍点n,x,y,axy);flag=1; if (flag =0) printf(“不存在鞍点

31、n”);37、有个15数按由小到大顺序存储在一种数组中,输入一种数,规定用折半查找法找出该数组中第几种元素值。如果该数不在数组中,则打印出无此数 #include #define N 15main() int low,high,mid,x; int aN=1,4,9,13,21,34,55,89,144,233,377,570,671,703,812; low=0,high=N-1; scanf(%d,&x); do mid=_(low+high)/2_; if(amid=x) break; else if(amidx) low=_mid+1_; else high=_mid-1_; whil

32、e(low=high); if(low=high) printf(x is the %dth numbern,mid+1);else printf(x not exist in the arrayn);38、输入一行字符,记录其中有多少个单词,单词之间用空格分隔开。#include void main() char string81; int i,num=0,word=0; char c; gets(string); for (i=0;(c=stringi) _!=0_;i+) if(c= ) word=0; else if(word=0) word=_1_; num+; printf(The

33、re are %d words in the line.n,num); 39、输出10行杨辉三角形。11 11 2 11 3 3 1#include #define N 10main() int i,n,k,aN=1; printf(“%5dn”,a0); for(i=1;i=1;j-) aj= _aj+aj-1_; for(j=0;_j=i_;j+) printf(“%5d”,aj); printf(“n”); 40、如下程序功能是:从键盘输入一种整数n(n10)和n个整数,存入数组a中,先依次输出各个数组元素值,然后找出最大值,并输出。#includemain() int a10,n,i,j,_max_ ; printf(输入 n=); scanf(%d,&n); printf(输入各数组元素:); for(i=0;in;i+) scanf(%d,_&ai_); printf(输出各数组元素:); for(_i=0;in;i+_ ) printf(%d ,_ai_ ); printf(n); max=_a0_ ;for(j=1;jn;j+)

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服