C语言程序设计第三版谭浩强课后习题答案完整版.doc

上传人:w****2 文档编号:6531585 上传时间:2020-02-28 格式:DOC 页数:15 大小:113KB
返回 下载 相关 举报
C语言程序设计第三版谭浩强课后习题答案完整版.doc_第1页
第1页 / 共15页
C语言程序设计第三版谭浩强课后习题答案完整版.doc_第2页
第2页 / 共15页
C语言程序设计第三版谭浩强课后习题答案完整版.doc_第3页
第3页 / 共15页
点击查看更多>>
资源描述
1.5#include void main() printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *n); printf( Very good! n); printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *n); 1.6#include void main() float max(float x,float y,float z); float a,b,c; printf(请分别输入a,b,c:n); scanf(%f,%f,%f,&a,&b,&c); printf(max=%f,max(a,b,c); float max(float x,float y,float z) float m,n; m=xy? x: y; n=mz? m: z; return(n); 3.6 #include void main() char c1=a,c2=b,c3=c,c4=101,c5=116; printf(“a%c b%ctc%ctabcn”,c1,c2,c3); printf(“tb%c %cn”,c4,c5); 3.9.1 #include void main() double x=2.5,y=4.7,z;int a=7; z=x+a%3*(int)(x+y)%2/4;printf(该表达式的值为:%f,z); 3.9.2#include void main() int a=2,b=3; float x=3.5,y=2.5,z; z=(float)(a+b)/2+(int)x%(int)y; printf(该表达式的值为:%f,z); 4.5#include void main() int a=5,b=7; double x=67.8564,y=-789.124; char c=A; long n=1234567; unsigned u=65535; printf(%d%dn,a,b); printf(%3d%3dn,a,b); printf(%f,%fn,x,y); printf(%-10f,%-10fn,x,y); printf(%8.2f,%8.2f,%.4f,%.4f,%3f,%3fn,x,y,x,y,x,y); printf(%e,%10.2en,x,y); printf(%c,%d,%o,%xn,n,n,n); printf(%ld,%lo,%xn,n,n,n); printf(%u,%o,%x,%dn,u,u,u,u); printf(%s,%5.3sn,COMPUTER,COMPUTER); 4.6#include void main() int a,b;float x,y;char c1,c2; scanf(a=%d b=%d,&a,&b); scanf( %f %e,&x,&y); scanf( %c %c,&c1,&c2);4.7#includevoid main() int a,b;float x,y,z;char c1,c2; scanf(%5d%5d,&a,&b); scanf(%f%f%*f%f,&x,&y,&z); scanf(%c%c,&c1,&c2); 4.8#include #define pi 3.14void main() float r,h,l,s1,s2,v1,v2; printf(请输入r,h的值:n); scanf(%f,%f,&r,&h); l=2*pi*r; s1=pi*r*r; s2=4*s1; v1=4/3*pi*r*r*r; v2=s1*h; printf(圆周长为:%.2fn,l);printf(圆面积为:%.2fn,s1);printf(圆球表面积为:%.2fn,s2);printf(圆球体积为:%.2fn,v1);printf(圆柱体积为:%.2fn,v2);5.5 #include void main() float x,y; printf(请输入x的值:n); scanf(%f,&x); if(x=1&x10) y=2*x-1; else y=3*x-11; printf(x与y的值分别为:n%f,%f,x,y); printf(n); 5.6 #include void main() float b; int a; printf(请输入该同学的成绩:n); scanf(%f,&b); while (b100) printf(输入有误,请重新输入:n); scanf(%f,&b); a= int(b/10); if(a6) a=5; switch(a)case 10: case 9: printf(该同学为等级:A);break; case 8: printf(该同学为等级:B);break; case 7: printf(该同学为等级:C);break; case 6: printf(该同学为等级:D);break; case 5: printf(该同学为等级:E);break; #include #include void main() int x,y,m,n,i=1,j=0; printf(请给出一个不多于5位的正整数:n); scanf(%d,&x); while(x=100000) printf(输入有误n请给出一个不多于5位的正整数:n); scanf(%d,&x); for(n=0;n0&y=0); printf(n逆序输出为n); doprintf( %d,int(x/pow(10,j)%10);j+; while(j-m0); printf(n); 6.1输入两个正整数m和n,求其最大公约数和最小公倍数。#include void main() int m,n,i,j; printf(请分别输入m,n的值:n); scanf(%d,%d,&m,&n); for(i=1;i=m;i+) if(m%i=0&n%i=0) j=i; printf(这两个整数的最大公约数是:%d,j); for(i=j;i+) if(i%m=0&i%n=0) break;printf(这两个整数的最小公倍数数是:%d,i);printf(n); 6.2 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。#include void main() int i=0,j=0,k=0,x=0; char c; printf(请输入一行字符串:n); while(c=getchar()!=n) if(c=A&c=a&c=0&c=9) k+; else x+; printf(英文字母、空格、数字、其他字符的个数分别为:%d,%d,%d,%d,i,j,k,x); printf(n); 6.3求Sn=a+aa+aaa+aaa之值,其中a是一个数字。例如:222222222222222(此时n5),n由键盘输入。#include#include void main() int i,n; int sum=0,s=0; printf(请输入n的值:n); scanf(%d,&n); while(n1) printf(请重新输入n的值:n); scanf(%d,&n); for(i=0;in;i+) s+=pow(10,i); sum+=2*s; printf(sum=%dn,sum); 6.8 题目:有一分数序列2/1,3/2,5/3,8/5,13/8,21/13,求出这个数列的前20项之和。#include void main() int a=1,b=1,i;float sum=0.0; for(i=0;i20;i+) a=a+b; b=a-b; sum+=(float)a/b; printf(这个数列前二十项之和为:n%f,sum); printf(n); 7.2#include void main() int i,j,t,a10; printf(请输入十个整数:n); for(i=0;i10;i+) scanf(%d,&ai); for(j=1;j10;j+) for(i=0;i10-j;i+) if(aiai+1) t=ai; ai=ai+1; ai+1=t; printf(这十位数从大到小排列为:n); for(i=0;i10;i+) printf(%5d,ai); printf(n); 7.3#include void main() int i,j,m,n,a33; printf(请输入3*3的整形矩阵n); for(i=0;i3;i+) for(j=0;j3;j+) scanf(%d,&aij); m=a00+a11+a22; n=a02+a11+a20; printf(3*3的整形矩阵对角线元素之和为:n); printf(%d,%d,m,n); 7.4#include void main() static int a10=1,5,6,10,20,24,55,58,64; int i,t; printf(请输入一个数:n); scanf(%d,&a9); for(i=9;i0;i-) if(aiai-1) t=ai-1; ai-1=ai; ai=t; for(i=0;i10;i+) printf(%4d,ai); printf(n); 7.8#include void main() int a55,b5,c5,d55; int i,j,k,l;printf(请输入5*5的整型数组n); for(i=0;i5;i+) for(j=0;j5;j+) scanf(%d,&dij); for(i=0;i5;i+) for(j=0;j5;j+) aij=dij; for(i=0,k=0;i5;i+,k+) for(j=0;j=aij+1) bk=aij+1=aij; else bk=aij+1; for(j=0,l=0;j5;j+,l+) for(i=0;i4;i+) if(aij=ai+1j) cl=ai+1j=aij; else cl=ai+1j; for(i=0,k=0;i5;i+,k+) for(j=0,l=0;j5;j+,l+) if(dij-bk=0) if(dij-cl=0) printf(鞍点为d%d%d=%dn,i,j,dij); else printf(没有鞍点n); 7.10#include#include void main() int i,j=0,k=0,l=0,m=0,n=0; char str0301,str1100,str2100,str3100; gets(str1); gets(str2); gets(str3); strcat(str0,str1); strcat(str0,str2); strcat(str0,str3); for(i=0;str0i!=0;i+) if(str0i=A&str0i=a&str0i=0&str0i=9) l+; else if(str0i= ) m+; else n+; printf(大写字母、小写字母、数字、空格以及其他字符的个数依次为:n); printf(%5d %7d %5d %6d %4dn,j,k,l,m,n); printf(n); 7.14#include #include void main() int i=0,resu; char s1100,s2100; printf(n 请输入string1:); gets(s1); printf(n 请输入string2:); gets(s2); while(s1i=s2i&s1i!=0) i+; if(s1i=0&s2i=0) resu=0; else resu=s1i-s2i; printf(n result:%dn,resu); 8.1#include void main() int maxgy(int m,int n); int mingb(int o,int p); int a,b; printf(请输入两个正整数:a,bn); scanf(%d,%d,&a,&b);while(a=0|b=0)printf(注:请输入两个正整数:a,bn); scanf(%d,%d,&a,&b); printf(这两个数的最大公约数是:%d,maxgy(a,b); printf(这两个数的最小公倍数是:%d,mingb(a,b); printf(n); int maxgy(int m,int n) int i,k; for(i=1;i=m;i+) if(m%i=0&n%i=0) k=i; return k; intmingb(int o,int p) int j; for(j=o;j+) if(j%o=0&j%p=0) break; return j; 8.3#include void main() int judss(int m); int a; printf(请输入一个正整数:); scanf(%d,&a); while(a=0)printf(注:请输入一个正整数:);scanf(%d,&a); judss(a);printf(n); int judss(int m) int i; for(i=2;im;i+) if(m%i=0) break; if(im) return printf(这个数不是素数); else return printf(这个数是素数); 8.5#include#include void main() char fx(char str1100); char str0100; printf(请输入一个字符串:n);gets(str0); fx(str0); puts(str0); char fx(char str1100) int i,j,k=strlen(str1); char str2100; strcpy(str2,str1); for(i=0,j=k-1;j-1;i+,j-) str1i=str2j; return str1100;
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!