300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > c语言程序设计第六版第八章课后题答案 《C语言程序设计》课后习题答案第八章.doc...

c语言程序设计第六版第八章课后题答案 《C语言程序设计》课后习题答案第八章.doc...

时间:2020-06-17 15:02:38

相关推荐

c语言程序设计第六版第八章课后题答案 《C语言程序设计》课后习题答案第八章.doc...

8.1 编写两个函数,分别求两个证书的最大公约数和最小公倍数,用主函数调用这两个函数并输出结果,两个整数由键盘输入。

void main()

{ int Mgy(int x,int y);

int Mgb(int z);

int a,b,mgy,mgb;

printf("请输入两个数:\n");

scanf("%d,%d",&a,&b);

mgy=Mgy(a,b);

mgb=Mgb(a,b,mgy);

printf("两个数的最大公约数为%d,最小公倍数为%d\n",mgy,mgb);}

int Mgy(int x,int y)

{int r,temp;

if(x

{ temp=x;

x=y;

y=temp;}

while(x%y!=0)

{ r=x%y;

x=y;

y=r;}

return y;}

int Mgb(int x,int y,int z)

{ return (x*y/z);}

8.2 求方程ax2+bx+c=0的根,用三个函数分别求当b2-4ac大于零、等于零和小于零时的根,并输出结果。从主函数输入a,b,c的值。

#include

float temp,k,x1,x2;

void main()

{ void Lzero(float a,float b,float c);

void Szero(float a,float b,float c);

void Ezero(float a,float b,float c);

float l,m,n;

printf("请输入三个数:\n");

scanf("%f,%f,%f",&l,&m,&n);

printf("方程的根为:\n");

temp=m*m-4*l*n;

k=sqrt(temp);

if(temp<0)

{ Szero(l,m,n); printf("x1=%f+%fi,x2=%f-%fi\n",x1,x2,x1,x2);}

else if(temp==0)

{Ezero(l,m,n);

printf("x1=%5.2f,x2=%5.2f\n",x1,x1);}

else{ Lzero(l,m,n);

printf("x1=%5.2f,x2=%5.2f\n",x1,x2);}

}

void Lzero(float a,float b,float c)

{ x1=(-b+k)/(2*a);

x2=(-b-k)/(2*a);}

void Szero(float a,float b,float c)

{ x1=-b/(2*a);

x2=sqrt(-temp)/(2*a);}

void Ezero(float a,float b,float c)

{ x1=(-b+k)/(2*a);}

8.3编写一个判素数的函数,在主函数输入一个整数,输出是否是素数的信息。

#include

void main()

{ int Isprime(int a);

int m,temp=0;

printf("请输入一个数:\n");

scanf("%d",&m);

temp=Isprime(m);

if(temp==0) printf("%d不是素数。\n",m);

else printf("%d是素数。\n",m);}

int Isprime(int a)

{ int i,k,flag;

if(a==0||a==1) flag=0;

else{ k=sqrt(a);

for(i=2;i<=k;i++)

if(a%i==0) flag=0;}

return flag; }

8.4编写一个函数,使给定的一个二维数组(3x3)转置,即行列互换。

#define N 3

int a[N][N];

void main()

{ void exchange(int a[][3]);

int i,j;

printf("请输入一个数组:\n");

for(i=0;i

for(j=0;j

scanf("%d",&a[i][j]);

printf("\n原始数组:\n");

for(i=0;i

{ for(j=0;j

printf("%3d",a[i][j]);

printf("\n");}

exchange(a);

printf("交换后的数组:\n");

for(i=0;i

{

for(j=0;j

prin

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。