1 / 10
文档名称:

〖精选文档〗C语言程序设计第四版第七章答案 谭浩强.doc

格式:doc   大小:41KB   页数:10页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

〖精选文档〗C语言程序设计第四版第七章答案 谭浩强.doc

上传人:xiao小蒋 2022/12/7 文件大小:41 KB

下载得到文件列表

〖精选文档〗C语言程序设计第四版第七章答案 谭浩强.doc

相关文档

文档介绍

文档介绍:该【〖精选文档〗C语言程序设计第四版第七章答案 谭浩强 】是由【xiao小蒋】上传分享,文档一共【10】页,该文档可以免费在线阅读,需要了解更多关于【〖精选文档〗C语言程序设计第四版第七章答案 谭浩强 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
1/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
第七章 函数
,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输入。
maxyueshu(m,n)
intm,n;
{inti=1,t;
for(;i<=m&&i<=n;i++)
{if(m%i==0&&n%i==0)
t=i;
}
return(t);
}
minbeishu(m,n)
intm,n;
{intj;
if(m>=n)j=m;
elsej=n;
for(;!(j%m==0&&j%n==0);j++);
returnj;
}
main()
{inta,b,max,min;
printf("entertwonumberis:");
scanf("%d,%d",&a,&b);
max=maxyueshu(a,b);
min=minbeishu(a,b);
printf("max=%d,min=%d\n",max,min);
}
,用三个函数分别求当b2-4ac大于0、等于0、和小于0时的根,并输出结果。从主函数输入a、b、c的值。
#include""
floatyishigen(m,n,k)
floatm,n,k;
{floatx1,x2;
x1=(-n+sqrt(k))/(2*m);
x2=(-n-sqrt(k))/(2*m);
printf("twoshigenisx1=%.3fandx2=%.3f\n",x1,x2);
}
floatdenggen(m,n)
floatm,n;
{floatx;
x=-n/(2*m);
printf("denggenisx=%.3f\n",x);
}
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
2/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
floatxugen(m,n,k)
floatm,n,k;
{floatx,y;
x=-n/(2*m);
y=sqrt(-k)/(2*m);
printf("twoxugenisx1=%.3f+%.3fiandx2=%.3f-%.3fi\n",x,y,x,y);
}
main()
{floata,b,c,q;
printf("inputabcis");
scanf("%f,%f,%f",&a,&b,&c);
printf("\n");
q=b*b-4*a*c;
if(q>0)yishigen(a,b,q);
elseif(q==0)denggen(a,b);
elsexugen(a,b,q);
}
,在主函数输入一个整数,输出是否是素数的消息。
psushu(m)
intm;
{inti=2,t;
for(;i<=m;i++)
if(m%i==0&&i<m)break;
if(m-i==0)t=1;
elset=0;
returnm;
}
main()
{inta,s;
printf("entersushuis\n");
scanf("%d",&a);
s=psushu(a);
if(s==1)printf("aissushu\n");
elseprintf("sisnotsushu\n");
}
,使给定的一个二维数组(3×3)转置,即行列互换。
intzhuangzhi(b)
intb[3][3];
{inti,j,t;
for(i=0;i<3;i++)
for(j=0;j>=i&&j<3-i;j++)
{t=b[i][j];b[i][j]=b[j][i];b[j][i]=t;}
}
main()
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
3/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
{inta[3][3];inti,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
printf("%d",a[i][j]);
printf("\n");}
zhuangzhi(a);
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
printf("%d",a[i][j]);
printf("\n");}
}
,使输入的一个字符串按反序存放,在主函数中输入输出字符串。
main()
{charstr0[100];
gets(str0);
fanxu(str0);
puts(str0);
}
fanxu(str1)
charstr1[100];
{inti,t,j;
charstr2[100];strcpy(str2,str1);
t=strlen(str1);
for(i=0,j=t-1;j>-1;i++,j--)
str1[i]=str2[j];
}
,将两个字符串连接。
lianjie(a,b)
chara[100],b[100];
{strcat(a,b);
}
main()
{charstr1[100],str2[100];
gets(str1);gets(str2);
lianjie(str1,str2);
puts(str1);
}
,将两个字符串中的元音字母复制到另一个字符串,然后输出。
fuzhi(a,b)
chara[100],b[100];
{inti,j=0;
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
4/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
for(i=0;a[i]!=’\0’;i++)
if(a[i]==97||a[i]==101||a[i]==105||a[i]==111||a[i]==117||a[i]==65||
a[i]==69||a[i]==73||a[i]==85){b[j]=a[i];j++;}
}
main()
{charstr1[100],str2[100];
gets(str1);
fuzhi(str1,str2);
puts(str2);
}
,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出"1_9_9_0"。
charf(b)
charb[4];
{inti=0;
for(;i<4;i++)
{printf("");
printf("%c",b[i]);}
printf("\n");
}
main()
{inta,u,v,w,t;charc[4];
scanf("%4d",&a);
u=a*;v=*(a-1000*u);w=(a-1000*u-100*v)*;t=a-1000*u-100*v-10*w;
c[0]=u+48;
c[1]=v+48;
c[2]=w+48;
c[3]=t+48;
f(c);
}
,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。
chartongji(str0,b)
charstr0[100];
intb[4];
{inti;
for(i=0;str0[i]!=’\0’;i++)
{if(str0[i]>=65&&str0[i]<=90||str0[i]>=97&&str0[i]<=122)b[0]++;
elseif(str0[i]>=48&&str0[i]<=57)b[1]++;
elseif(str0[i]==32)b[2]++;
elseb[3]++;}
}
main()
{charstr1[100];staticinti,a[4];
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
5/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
gets(str1);
tongji(str1,a);
printf("zimuShuziKonggeQita\n");
for(i=0;i<4;i++)
printf("%-8d",a[i]);printf("\n");
}
,输入一行字符,将此字符串中最长的单词输出。
cechang(str1,word0)
charstr1[100],word0[15];
{inti=0,j=0,t=0;
staticcharword1[15];
for(;str1[i]!=’\0’;i++)
{if(!(str1[i]>=97&&str1[i]<=122||str1[i]>=65&&str1[i]<=90))
{t=j;j=0;continue;}
word1[j]=str1[i];j++;
if(j>=t)strcpy(word0,word1);}
}
main()
{charstr0[100],longword[15];
gets(str0);
cechang(str0,longword);
puts(longword);
}

intpaixu(x)
intx[];
{inti,j,t;
for(j=1;j<10;j++)
for(i=0;i<=9-j;i++)
if(x[i]>x[i+1]){t=x[i+1];x[i+1]=x[i];x[i]=t;}
}
main()
{inty[10];inti;
for(i=0;i<10;i++)
scanf("%d",&y[i]);
paixu(y);
for(i=0;i<10;i++)
printf("%5d",y[i]);
printf("\n");
}
。方程为:,系数a,b,c,d由主函数输入。求X在1附近的一个实根。求出后由主函数输出。
doubleqigen(s,t,u,v)
ints,t,u,v;
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
6/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
{doublex,y;x=1;
do{y=s*x*x*x+t*x*x+u*x+v;
x=x-y/(3*s*x*x+2*t*x+u);}
while(y!=0);
returnx;
}
main()
{inta,b,c,d;doublex;
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
x=qigen(a,b,c,d);
printf("x=%.3f\n",x);
}

floatp(x0,n)
intn;floatx0;
{floaty;
if(n==0||n==1)if(n==1)y=x0;elsey=1;
elsey=((2*n-1)*x0*p(x0,n-1)-(n-1)*p(x0,n-2))/n;
return(y);
}
main()
{floatx,y0;inta,i;
scanf("%f,%d",&x,&a);
y0=p(x,a);
printf("y0=%.3f\n",y0);
}
,分别用函数求:①每个学生平均分;②每门课的平均分;③找出最高分所对应的学生和课程;④求平均分方差:δ=[SXi^2]/n-(SXi/n)^2,为一学生的平均分
floatx1[10],x2[5];
floatpp(),cc(),find(),xx();
main()
{charname[10][20],class[5][20];floatscore[10][5],o,k=0,max[5];inta[5],i,j;
for(i=0;i<10;i++)
gets(name[i]);
for(j=0;j<5;j++)gets(class[j]);
for(i=0;i<10;i++)
for(j=0;j<5;j++)
scanf("%f",&score[i][j]);
pp(score);
cc(score);
find(score,max,a);
o=xx(k);
for(i=0;i<10;i++)
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
7/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
{puts(name[i]);
printf("%.3f\n",x1[i]);}
for(j=0;j<5;j++)
{puts(class[j]);printf("%.3f\n",x2[j]);}
for(j=0;j<5;j++){printf("%.3f\n",max[j]);
puts(name[a[j]]);
puts(class[j]);}
printf("o=%.3f\n",o);
}
floatpp(f)
floatf[10][5];
{floatsum=0;inti,j;
for(i=0,sum=0;i<10;i++)
{for(j=0;j<5;j++)
sum=sum+f[i][j];
x1[i]=sum/5;}
}
floatcc(y)
floaty[10][5];
{floatsum=0;inti,j;
for(j=0;j<5;j++)
{for(i=0;i<10;i++)
sum=sum+y[i][j];
x1[j]=sum/10;}
}
floatfind(z,s,t)
floatz[10][5],s[5];intt[5];
{inti,j;
for(j=0,s[j]=z[0][j];j<5;j++)
for(i=0;i<10;i++)
if(s[j]<z[i][j]){s[j]=z[i][j];t[j]=i;}
}
floatxx(q)
floatq;
{floatf=0,e=0;inti;
for(i=0;i<10;i++)
{e=x1[i]*x1[i]+e;
f=f+x1[i];}
q=e/10-(f/10)*(f/10);
return(q);
}
:①输个职工的姓名和职工号;②按职工号由小到大顺序排序,姓名顺序也随之调整;③要求输入一个职工号,用折半法找出该职工的姓名,从主函数输入要查找的职工号,输出该职工姓名。
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
8/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
#defineN10
find(a,b)
inta[],b[];
{inti,j,s,t,c[N][2];
for(i=0;i<N;i++)
{c[i][1]=a[i];c[i][1]=i;}
for(i=0;i<N;i++)
for(j=0;j<N-i-1;j++)
if(c[i][0]>c[i+1][0])
{t=c[i][0];c[i][0]=c[i+1][0];c[i+1][0]=t;
s=c[i][1];c[i][1]=c[i+1][1];c[i+1][1]=s;}
for(i=0;i<N;i++)
b[i]=c[i][1];
return;
}
lookfor(h,k)
inth[],k;
{inti,j;
for(i=0;i<N;i++)
if(h[i]-k==0)j=i;
returnj;
}
main()
{intnumber[N],x[N],i,j,u,p;charname[N][20];
for(i=0;i<N;i++)
{gets(name[i]);
scanf("%d",&number[i]);}
scanf("%d",&p);
find(number,x);
u=lookfor(number,p);
for(i=0;i<N;i++)
{printf("%d",number[i]);
puts(name[x[i]]);}
puts(name[x[u]]);
}
,输入一个十六进制数,输出相应的十进制数。
#include""
intx;
ff(shu)
charshu[];
{inti=strlen(shu)-1,sum=0;
for(;i>-1;i++)
{if{if(48<=shu[i]<=57)sum=sum+(shu[i]-48)*pow(16,(i-1));
elseif(65<=shu[i]<=90)sum=sum+(shu[i]-55)*pow(16,(i-1));
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
9/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
elseif(97<=shu[i]<=102)sum=sum+(shu[i]-87)*pow(16,(i-1));
x=1;}
elsex=0;
returnx;
}
main()
{charshufu[100];ints;
gets(shufu);s=ff(shufu);
if(x)printf("s(D)=%d\n",s);
elseprintf("Thenumberisnotox\n");
}
。例如,输入486,应输出字符串"486"。n的位数不确定,可以是任意位数的整数。
#include""
intx[10];
pf(m,n)
unsignedlongm;intn;
{inty;
if(n==0){y=(int)(m%10);x[0]=y;}
else{y=(unsignedlong)((m-pf(m,n-1))/pow(10,n))%10;x[n]=y;}
return(y);
}
main()
{unsignedlonga,b;inti,j,k;charc[11];
scanf("%ld",&a);
for(j=0,b=a;b>;j++,b/=10);
pf(a,j-1);
for(i=0,k=j-1;i<j;i++,k--)
c[i]=x[k]+48;c[10]=’\0’;
puts(c);}

#include""
charx[11];
pf(m,o)
unsignedlongm;into;
{intj,i;
for(i=o-1,j=0;i>-1;i--,j++)
x[i]=(int)((unsignedlong)(m/pow(10,j))%10)+48;
return;
}
main()
{unsignedlonga,b;intj,i;
scanf("%ld",&a);
for(j=0,b=a;b>;j++,b/=10);
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
10/10
〖精选文档〗C语言程序设计第四版第七章答案谭浩强
pf(a,j);
puts(x);printf("%d\n",j);}

#include""
intx[10];unsignedlongm;
pf(n)
intn;
{inty;
if(n==0){y=m%10;x[0]=y;}
else{y=(unsignedlong)((m-pf(n-1))/pow(10,n))%10;x[n]=y;}
return(y);
}
main()
{unsignedlonga;inti,j,k;charc[11];
scanf("%ld",&m);
for(j=0,a=m;a>;j++,a/=10);
pf(j-1);
for(i=0,k=j-1;i<j;i++,k--)
c[i]=x[k]+48;c[10]=’\0’;
puts(c);}
、月、日,计算该日是该年的第几天。
intfind(x,y,z)
intx,y,z;
{inti,t,s,days=0;
if(x%4==0)t=1;
elset=0;
for(i=1;i<y;i++)
{if(i==2)s=2-t;
elses=0;
days=days+30+i%2-s;
}
days=days+z;
return(days);
}
main()
{intyear,month,date,day;
scanf("%d%d%d",&year,&month,&date);
day=find(year,month,date);
printf("THEDATEISTHE%dthDAYS\n",day);
}

最近更新

状态反馈容错网络控制系统研究的中期报告 2页

特高压输电线路工程安全风险预警系统研究的中.. 2页

2024年员工实习报告范文汇总8篇 24页

2024年员工安全住宿承诺书 14页

特别权力关系的法律救济的综述报告 2页

物联网技术在电力设备管理中的应用与研究的中.. 2页

物联网中多层跨层接入管理关键技术的中期报告.. 2页

物理层网络编码与卷积码的联合设计的中期报告.. 2页

2024年员工入职感言 19页

2024年员工个人转正述职报告(15篇) 47页

2024年员工个人工作总结通用[13篇] 27页

牛Angptl3基因组织表达、多态性及其与生长性状.. 2页

爵床化学成分研究的中期报告 2页

2024年告别小学作文汇总五篇 10页

燃料电池备用电源用远程监控系统的设计与实现.. 2页

2024年听雨说课稿 18页

煤矿救援机器人运动控制系统研究的综述报告 2页

2024年听教学讲座心得体会(精选5篇) 9页

2024年含蓄表白的话 36页

煤炭城市人地系统脆弱性发生机制研究——以阜.. 2页

2023年度中国精神心理健康蓝皮书文档 6页

蛋白尿护理查房 23页

大学食堂餐饮企业准入退出制度 3页

检察院举报信范本 1页

利用f206片内flash进行在线编程 8页

混凝土投标技术响应文件1 36页

复制以下网址粘贴到浏览器打开 1页

灵歌第一.二册130首 50页

板形培训资料 43页

范例:湖北省科技支撑计划(重点新产品新工艺研.. 14页