西工大C语言POJ习题答案讲解.docx

上传人:b****9 文档编号:26252487 上传时间:2023-06-17 格式:DOCX 页数:186 大小:5.40MB
下载 相关 举报
西工大C语言POJ习题答案讲解.docx_第1页
第1页 / 共186页
西工大C语言POJ习题答案讲解.docx_第2页
第2页 / 共186页
西工大C语言POJ习题答案讲解.docx_第3页
第3页 / 共186页
西工大C语言POJ习题答案讲解.docx_第4页
第4页 / 共186页
西工大C语言POJ习题答案讲解.docx_第5页
第5页 / 共186页
点击查看更多>>
下载资源
资源描述

西工大C语言POJ习题答案讲解.docx

《西工大C语言POJ习题答案讲解.docx》由会员分享,可在线阅读,更多相关《西工大C语言POJ习题答案讲解.docx(186页珍藏版)》请在冰豆网上搜索。

西工大C语言POJ习题答案讲解.docx

西工大C语言POJ习题答案讲解

一.1.第一季10题全(注:

第五题问题已经解决,确认AC!

#include 

int main()

{

  int a,b,sum;

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

  sum=a+b;

  printf("%d\n",sum);

  return 0;

}

 

2.

#include 

#define PI 3.1415926

int main(){

  double r,h,l,s,sq,vq,vz;

  scanf("%lf%lf",&r,&h);

  l=2*PI*r;

  s=PI*r*r;

  sq=4*PI*r*r;

  vq=4*PI*r*r*r/3;

  vz=s*h;

  printf("%.2lf\n%.2lf\n%.2lf\n%.2lf\n%.2lf\n",l,s,sq,vq,vz);

  return 0;

}

 

3.

#include 

int main(){

  int a,b,c;

    double d,e;

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

  d=a+b+c;

  e=d/3;

  printf("%lf\n%lf\n",d,e);

  return 0;

}

 

4.

#include 

int main(){

  int a,b,c;

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

  if(a

    a=b;

  if(a

    a=c;

  printf("%d\n",a);

  return 0;

}

 

5.

#include

int main()

{

    int i=0,j=0,k=1;

  char a[6];

  while((a[i]=getchar())!

='\n')

  {

       i++;

  }

  for(;i>0;i--){

    if(a[j]==a[i-1]){

      j++;

      continue;}

     else {k=0;

     break;}

  }

  if(k==1)

    printf("yes\n");

  else

    printf("no\n");

}

 

6.

#include

int main()

{   

  double a,c;

  scanf("%lf",&a);

    switch((int)a/10)

  {

      case 0:

c=a*0.1;break;

      case 1:

c=(a-10)*0.075+10*0.1;break;

      case 2:

      case 3:

c=(a-20)*0.05+10*0.075+10*0.1;break;

      case 4:

      case 5:

c=(a-40)*0.03+20*0.05+10*0.075+10*0.1;break;

      case 6:

      case 7:

      case 8:

      case 9:

c=(a-60)*0.015+20*0.03+20*0.05+10*0.075+10*0.1;break;

            default:

c=(a-100)*0.01+40*0.015+20*0.03+20*0.05+10*0.075+10*0.1;

      }

    printf("%lf\n",c);

  return 0;

}

 

7.

#include

int main()

{

  double a,b,c;

  scanf("%lf",&a);

  c=(int)a;

  if(a>c)a=c+1;

  if(a>15)

    b=(a-15)*2.1+7+13*1.5;

     else {

    if(a>2)

      b=(a-2)*1.5+7;

      else b=7;

     }

  printf("%lf\n",b);

  return 0;

}

 

8.

#include 

int main()

{

  int a,b,c,e,f=30,g=31,n;

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

    if((a%400==0)||(a%100!

=0&&a%4==0))

    e=29;

  else 

    e=28;

  switch (b)

  {

  case 1:

n=c;break;

  case 2:

n=g+c;break;

  case 3:

n=g+e+c;break;

  case 4:

n=g+e+g+c;break;

  case 5:

n=g+e+g+f+c;break;

  case 6:

n=g+e+g+f+g+c;break;

  case 7:

n=g+e+g+f+g+f+c;break;

  case 8:

n=g+e+g+f+g+f+g+c;break;

  case 9:

n=g+e+g+f+g+f+g+g+c;break;

  case 10:

n=g+e+g+f+g+f+g+g+f+c;break;

  case 11:

n=g+e+g+f+g+f+g+g+f+g+c;break;

  default:

 n=g+e+g+f+g+f+g+g+f+g+f+c;

      }

       printf("%d\n",n);

 return 0;

 }

9.

#include 

int main()

{

    int x;

  scanf("%d",&x);

  if(x>=90&&x<=100)

    printf("A\n");

  else if (x>=80)

    printf("B\n");

  else if (x>=70)

    printf("C\n");

  else if (x>=60)

    printf("D\n");

  else

    printf("E\n");

  return 0;

}

 

10.

#include

int main()

{

  double x,y,s;

  scanf("%lf,%lf",&x,&y);

  s=(x+2)*(x+2)+(y-2)*(y-2);

  if(s>1){

    s=(x+2)*(x+2)+(y+2)*(y+2);

    if(s>1){

      s=(x-2)*(x-2)+(y+2)*(y+2);

      if(s>1){

        s=(x-2)*(x-2)+(y-2)*(y-2);

        if(s>1){printf("0\n");return 1;}

      }

    }

  }

  printf("10\n");

  return 0;

}

二。

第二季15题全

11.

#include

intmain()

{

intx=0,a=0,c=0,i=1;

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

c=x;

for(i=1;i

c=(c*x)%1000;

};

if(c<100){

if(c<10)

printf("00%d\n",c);

else

printf("0%d\n",c);

};

if(c>=100)

printf("%d\n",c);

return0;

}

12.

#include

intmain()

{

inti=1,a=0,b=0,c=1016,k=1;

for(;k=1;){

c=c+4;

a=c;

b=c;

for(i=1;i<=4;i++){

a=a/4*5+1;

if(a%4!

=0){

k=0;

;};

};

a=a/4*5+1;

if(k==1){

printf("%d%d\n",a,b);

break;

};

};

return0;

}

13。

#include

#include

intmain()

{

inti=1,n=0,b=0;

doublej=0,k=0,m=0;

scanf("%d",&n);

for(;i<=n;i++){

b=i%2-1;

k=pow(-1,b);

m=pow(2,i);

j+=k*m/(m-k)/(2*m+k);

};

printf("%.6lf\n",j);

return0;

}

14.

#include

#include

intmain()

{

inta=0,b=0,i=0,t;

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

if(a>b){t=a;a=b;b=t;}

for(;a<=b;a++)

{intm=1;

for(i=2;i<=sqrt(a);i++){

if(a%i==0){

m=0;

break;};

}

if(m==1)

printf("%d",a);

}

printf("\n");

return0;

}

15.

#include

#include

intmain()

{

inta=0,b=0,c=0;

scanf("%d",&a);

b=(int)pow(a,2);

c=(int)pow(a,3);

if(a%2)

{printf("%d*%d*%d=%d=%d",a,a,a,c,b-a/2*2);

intn=1;

for(;n

printf("+%d",b-a/2*2+2*n);

}

printf("\n");

};

if(a%2==0)

{

intn=1;

printf("%d*%d*%d=%d=%d",a,a,a,c,b+1-a);

for(;n

printf("+%d",b+1-a+n*2);

}

printf("\n");

};

return0;

}

16

#include

#include

intmain()

{

inta=0,b=0,c=0,d=0,e=0,x=0,y=0,z=0,u=0,v=0;

doublef=0;

for(a=0;a<=2;a++){

doublem=0;

for(b=0;b<=(20-8*a)/5;b++){

for(c=0;c<=(20-8*a-5*b)/3;c++){

for(d=0;d<=(20-8*a-5*b-3*c)/2;d++){

e=20-8*a-5*b-3*c-2*d;

m=2000*pow(1+0.0084*12*8,a)*pow(1+0.0075*12*5,b)*pow(1+0.0069*12*3,c)*pow(1+0.0066*12*2,d)*pow(1+0.0063*12,e);

if(f

f=m;

x=a,y=b,z=c,u=d,v=e;

};

};

};

};

};

printf("%d%d%d%d%d\n%.2lf\n",x,y,z,u,v,f);

return0;

}

17.

#include

#include

intmain()

{

doublea=0;

inti=0,b=0;

scanf("%lf",&a);

b=(int)a;

for(;(int)(b/pow(10,i));)

i++;

printf("%d\n",i);

return0;

}

18。

#include

intmain()

{

doublea=1,b=2,i=1,m=0;

for(;i<=20;i++){

m+=b/a;

b=a+b;

a=b-a;

}

printf("%.6lf\n",m);

return0;

}

19.

#include

#include

intmain()

{

doublea=0,b=0,c=0,e=0;

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

for(;b-a>0.0001;){

c=2*pow(a,3)-4*pow(a,2)+3*a-6;

e=2*pow((a+b)/2,3)-4*pow((a+b)/2,2)+3*(a+b)/2-6;

if(c*e==0)

{

if(e==0)

a=(a+b)/2;

break;

};

if(c*e!

=0)

{

if(c*e<0)

b=(a+b)/2;

else

a=(a+b)/2;

};

};

printf("%.2lf\n",a);

return0;

}

20.

#include

int main()

{

  char i,j,k;

    for(i='X';i<='Z';i++)

      for(j='X';j<='Z';j++)

        if(i!

=j)

          for(k='X';k<='Z';k++)

            if(i!

=k&&j!

=k)

               if((k!

='X')&&(k!

='Z')&&(i!

='X'))

  printf("A=%c\nB=%c\nC=%c\n",i,j,k);

return 0;

}

21.

#include

intmain()

{

inta,b,i,j,cnt=0,sum=0;

b=-1;

for(i=500;i<=800;i++)

{

for(j=2;j

{

if(i%j==0)

break;

}

if(j>i-1)

{

cnt++;

a=b*i;

sum+=a;

b=-b;

}

}

printf("%d%d\n",cnt,sum);

return0;

}

22.

#include

intmain()

{

inti=2,A1=1,A2=1,A3,A4,n,M=10,j,S1=2,S2=0;

for(n=1;n<=3;n++)

{

M=M*10;

for(j=1;S1+A4

{

A3=A1+2*A2;

A4=A2+2*A3;

S1=S1+A3;

S2=S1+A4;

A1=A2;

A2=A3;

i++;

}

printf("%d\n",i);

}

return0;

}

23.

#include

#include

intmain()

{

doublex1,x2,x3=0,a;

scanf("%lf",&a);

x1=a;

while(fabs(x1-x3)>=0.00001)

{

x2=(x1+a/x1)/2;

x3=x1;

x1=x2;

}

printf("%.5lf\n",x1);

return0;

}

24.

#include

intmain()

{inti;

doublea=1,sum=0;

for(i=1;1/a>=0.000001;i++)

{

if(i%2==0)sum=sum-1/a;

elsesum=sum+1/a;

a=a+2;

}

sum=sum*4;

printf("%.6lf\n",sum);

return0;

}

25.

#include

intmain()

{inta,i,n;

for(a=6;a<=1000;a++)

{n=0;

for(i=1;i

{

if(a%i==0)n=n+i;

}

if(n==a)

{printf("%d=",a);

for(i=1;i

{

if(a%i==0)

{

if(i

elseprintf("%d",i);

}

}

printf("\n");

}

}

return0;

}

三.第三季已齐全

21.

#include

#include

intmain()

{

intx,y,a,b,l,s1,s2,t;

scanf("%d%d%d%d%d",&x,&y,&a,&b,&l);

if(x

s1=(y-x);s2=l-s1;

if(a>b){t=s1/(a-b);printf("%d\n",t);}

elseif(a

elseprintf("impossible\n");

}

else{

s1=x-y;s2=l-s1;

if(a>b){t=s2/(a-b);printf("%d\n",t);}

elseif(a

elseprintf("impossible\n");

}

return0;

}

22.

#include

#include

int main()

{

  int N,i,j,k,x,a,cnt=0;

  scanf("%d",&N);

  for(k=7;k<=N;k++)

  {

      j=k;

      for(i=4;i>=0;i--)

      {

        a=(int)pow(10,i);

        x=j/a;

        if(x==7||k%7==0)

        {

          printf("%d ",k);

          break;

        }

        else j=j-a*x;

      }

    

  }

  return 0;

}

23.

#include

intmain()

{

inta,b,c,d,e,f,g,h,i,j,n;

scanf("%d",&n);

if(n<2||n>79)printf("error\n");

for(j=0;j<=9;j++)

for(i=0;i<=9;i++)if(i==j)continue;

elsefor(h=0;h<=9;h++)if(h==j||h==i)continue;

elsefor(g=0;g<=9;g++)if(g==h||g==i||g==j)continue;

elsefor(f=0;f<=9;f++)if(f==g||f==h||f==i||f==j)continue;

elsefor(e=0;e<=9;e++)if(e==f||e==g||e==h||e==i||e==j)continue;

elsefor(d=0;d<=9;d++)if(d==e||d==f||d==g||d==h||d==i||d==j)continue;

elsefor(c=0;c<=9;c++)if(c==d||c==e||c==f||c==g||c==h||c==i||c==j)continue;

elsefor(b=0;b<=9;b++)if(b==c||b==d||b==e||b==f||b==g||b==h||b==i||b==j)continue;

elsefor(a=0;a<=9;a++)if(a==b||a==c||a==d||a==e||a==f||a==g||a==h||a==i||a==j)continue;

elseif(double(a*10000+b*1000+c*100+d*10+e)/double(f*10000+g*1000+h*100+i*10+j)==n)

printf("%d%d%d%d%d/%d%d%d%d%d=%d\n",a,b,c,d,e,f,g,h,i,j,n);

elsecontinue;

return0;

}

24。

#include

intmain()

{inta=1,b1=0,b2,t,n;

scanf("%d",&t);

for(n=1;n<=t;n++)

{b2=2*b1+3*a;

a=b1;

b1=b2;

}

printf("%d%d\n",a,b2);

return0;

}

25.

#include

#include

int main()

{

    long s=0,l=0,m=0;

  int n=0,i=0,j=0,k=0;

  scanf("%d",&n);

  for(s=14000;;s++)

  {

      for(i=1;i<=99;i+=2)

    {

        l=s*100+i;

      for(m=3;m<=(int)pow(l,0.5);m+=2)

      {   

          if(l%m==0)

        {

             goto B;

        }

      }

        goto A;

      

B:

    ;}

    k++;

    if(n==k)

    {

      printf("%ld %ld\n",s*100,l);

        break;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 金融投资

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1