2021谭浩强C语言第八章答案.doc

上传人:一** 文档编号:20664738 上传时间:2021-04-11 格式:DOCX 页数:24 大小:19.63KB
返回 下载 相关 举报
2021谭浩强C语言第八章答案.doc_第1页
第1页 / 共24页
2021谭浩强C语言第八章答案.doc_第2页
第2页 / 共24页
2021谭浩强C语言第八章答案.doc_第3页
第3页 / 共24页
点击查看更多>>
资源描述
谭浩强C语言第八章答案.doc8.1# includeint yueshu(int m,int n);int beishu(int m,int n);int main()int a,b,Y,B;printf(输入两个数字:n);scanf(%d%d,&a,&b);Y=yueshu(a,b);B=beishu(a,b);printf(最大公约数为Y=%dn最小公倍数为B=%dn,Y,B); int yueshu(int m,int n)int r,t;if(mt=m;m=n;n=t;while(1)r=m%n;if(r=0)break;elsem=n;n=r;return n;int beishu(int m,int n)int c;c=m*n/yueshu(m,n);return c;8.2# includefloat gen1(int a,int b,int c)int x1,x2;x1=(-b+sqrt(b*b-4*a*c)/(2*a);x2=(-b-sqrt(b*b-4*a*c)/(2*a);printf(%fn%fn,x1,x2);return 0;float gen2(int a,int b,int c)int x;x=-b/(2*a);printf(%fn,x);return x;float gen3(int a,int b,int c)printf(无实根;n);return 0;float function(int a,int b,int c)float x,y;y=a*x*x+b*x+c;return y;void main()int x,a,b,c,y;printf(请输入系数:n);scanf(%d%d%d,&a,&b,&c);if(b*b-4*a*c0)printf(根为:%f%f,gen1(a,b,c);if(b*b-4*a*c=0)printf(根为:%f,gen2(a,b,c);if(b*b-4*a*cprintf(根为:,gen3(a,b,c);8.3# include# includeint sushu(int x);void main()int y;printf(请输入要判断的数字:n);scanf(%d,&y);sushu(y);int sushu(int x)int i;float k;k=sqrt(x);for(i=2;iif(x%i=0) break;if(ik+1)printf(%d就是素数!,x);elseprintf(%d不是素数n,x); 8.4# includevoid zhuanzhi(b);void main()int a33=0;int i,j;printf(请输入三维数组:n);for(i=0;ifor(j=0;jscanf(%d,&aij);zhuanzhi(a);void zhuanzhi(int b33)int i,j;for(i=0;ifor(j=0;jprintf(%2d,bji);printf(n);8.5# include# includevoid fanxu(char a50);void main()char b50;printf(请输入字符串:n);gets(b);fanxu(b);printf(n);void fanxu(char a50)int i;for(i=strlen(a);i=0;i-)printf(%c,ai);8.6# include# includevoid lianjie(char a120,char a220); void main()char a20=0,b20=0;printf(输入两个字符串:n);gets(a);gets(b);lianjie(a,b);printf(n);void lianjie(char a120,char a220) int m,n,i;char a350;m=strlen(a1);n=strlen(a2);for(i=0;ia3i=a1i;for(i=0;ia3m+i=a2i;a3m+n=0;for(i=0;iprintf(%c,a3i);8.7# include# includevoid yuanyin(char b30);void main()char a150;printf(请输入一字符串:n);gets(a1);yuanyin(a1);void yuanyin(char b30)int i,j=0;char c120=0,c220=0;for(i=0;iif(bi=a|bi=e|bi=i|bi=o|bi=u|bi=A|bi=E|bi=I|bi=O|bi=U) c1j=bi;j+;/ c1j+1=0;strcpy(c2,c1);for(i=0;iprintf(%c,c2i);printf(n);8.8# includevoid kong(int b4);void main()int a4=0,i;printf( 请输入四个数字n);for(i=0;iscanf(%d,&ai);kong(a);printf(n);void kong(int b4)int i;for(i=0;iprintf(%d,bi);printf( );8.9# include# includevoid tongji(char b50);void main()char a50=0;printf(输入一串字符:n);gets(a);tongji(a);void tongji(char b50)int i;int d=0,x=0,s=0,k=0,q=0;for(i=0;iif(bi=A&bid+;else if(bi=a&bix+;else if(bi=0&bis+;else if(bi= )k+;else q+;printf(大写%d个n小写%d个n数字%d个n空格%d个n其他%d个n,d,x,s,k,q); 8.10# include# includevoid danci(char str1100,char w015);void main()char a50=0,b15=0;printf(输入一串字符:n);gets(a);danci(a,b);void danci(char str1100,char w015)int i=0,j=0,t=0;char w115;for(i=0;iif(!(str1i=a&str1it=i;i=0;continue;w1j=str1i;j+;if(j=t)strcpy(w0,w1);puts(w0);8.11# includevoid maopao(int a10);void main()int b10=0,i;printf(请输入十个数字:n);for(i=0;iscanf(%d,&bi);maopao(b);printf(所排顺序为:);for(i=0;iprintf(%-3d,bi);printf(n);void maopao(int a10)int i,j,t;for(j=1;jfor(i=0;iif(aiai+1)t=ai;ai=ai+1;ai+1=t;8.12# include# includevoid ND(int a,int b,int c,int d);void main()int p,q,r,s;printf(请输入系数:n);scanf(%d%d%d%d,&p,&q,&r,&s);printf(方程为:%dX3+%dX2+%dX+%d=0n,p,q,r,s);ND(p,q,r,s);void ND(int a,int b,int c,int d)float x=1,x0,x1;do x1=x;x0=x-(a*x*x*x+b*x*x+c*x+d)/(3*a*x*x+2*b*x+c);x=x0;while(fabs(x1-x0)1e-6);printf(%fn,x0);8.13# includefloat lerangde(float x,int n);void main()float x,y;int m;printf(请输入x以及阶数m:n);scanf(%f%d,&x,&m);y=lerangde(x,m);printf(勒让德多项式值为:%-f,y);putchar(10);float lerangde(float x1,int n)if(n=0|n=1)if(n=0)return 1;else return x1;elsereturn (2*n-1)*x1-lerangde(x1,n-1)-(n-1)*lerangde(x1,n-2)/n; 8.14# include# define M 2# define N 3float stu_average(int aMN);void sourse_average(int aMN);void max(int aMN);float average(int aMN);/调用函数;void main()int a23=0;int i,j;printf(输入学生以及对应的成绩:n);for(i=0;ifor(j=0;jscanf(%d,&aij);stu_average(a);sourse_average(a);max(a);average(a);printf(每个学生的平均分为:%fn,stu_average(a); /计算每个学生平均成绩;float stu_average(int aMN)int i,j,sum=0;float x1;for(i=0;ifor(j=0;jsum=sum+aij;x1=(float)(sum/M);return x1;/课程平均成绩;void sourse_average(int aMN)int sum=0,i,j;float x1;for(i=0;ifor(j=0;jsum=sum+aij;x1=(float)(sum/N);printf(每门课程的平均分为:%fn,x1);/最高分;void max(int aMN)int max=a00,t,s,k,i,j;for(i=0;ini+1)t=ni;ni=ni+1;ni+1=t;strcpy(c,*mi);strcpy(*mi,*mi+1);strcpy(*mi+1,c);for(i=0;iprintf(%st%dn,mi,ni);void found()int p,i,j,flag=0,mid;printf(输入要查找的职工号:n);scanf(%d,&p);i=0;j=3;while(imid=(i+j)/2;if(p=nmid)flag=1;break;elseif(pnmid)j=mid-1;elsei=mid+1;if(flag=1)printf(找到了,名字是%sn,mmid);elseprintf(无此人!n);8.16# include# includevoid main()char a20=0,c20,b20;int i,j,m,n,y;printf(请输入十六进制数字:n);gets(a);n=strlen(a);m=strlen(c);for(i=0;iif(aiai=ai-48;else if(aiai=ai-55;elseai=ai-87;for(i=0;iy=ai;for(j=3;j=0;j-)bi*4+j=y%2;y=y/2;for(i=0;iint k;c0=c0*16+ai;for(k=1;kck=ck*16;y=0;for(k=0;ky=y+ck;ck=y%10;y=y/10;while(y0)m+;cm=y%10;y=y/10;for(i=m;i=0;i-)printf(%d,ci);getchar();8.17# includevoid F(int m);void main()int n;printf(输入数字:n);scanf(%d,&n);F(n);putchar(10);void F(int m)int j;if(m=0&mprintf(%d,m);elsej=m%10;F(m/10);printf(%d,j);8.18# includevoid DJT(int y,int m,int d);int leap(int year);void main()int year,month,day;printf(请输入年-月-日:n);scanf(%d%d%d,&year,&month,&day);DJT(year,month,day);int leap(int year)int flag=0;if(year%4=0)if(year%100=0)if(year%400=0)flag=1;else flag=0;else flag=1;else flag=0;return flag;void DJT(int y,int m,int d)int p=0;int r=0;if(leap(y)r=29;else r=28;switch(m)case 1:p=d; break;case 2:p=31+d;break;case 3:p=31+r+d;break;case 4:p=31+r+31+d;break;case 5:p=31+r+31+30+d;break;case 6:p=31+r+31+30+31+d;break;case 7:p=31+r+31+30+31+30+d;break;case 8:p=31+r+31+30+31+30+31+d;break;case 9:p=31+r+31+30+31+30+31+31+d;break;case 10:p=31+r+31+30+31+30+31+31+30+d;break;case 11:p=31+r+31+30+31+30+31+31+30+31+d;break;case 12:p=31+r+31+30+31+30+31+31+30+31+30+d;break;default : ;printf(这是%d年的第%d天n,y,p);
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


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

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


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