《C语言程序设计》第二章练习与习题答案

【练2-1】
#include<stdio.h>
int main(void)
{
printf("Programming in C is even more fun!\n");
return 0;
}
【练2-2】
printf("Programming is fun. And Programming in C is even more fun!\n");
#include<stdio.h>
int main(void)
{
printf("Programming is fun. And Programming in C is even more fun!\n");
return 0;
}
【练2-3】
* * * *
* * *
* *
*
#include<stdio.h>
int main(void)
{
printf(" * * * *\n");
printf(" * * *\n");
printf(" * *\n");
printf(" *\n");
return 0;
}
【练2-4】
#include<stdio.h>
int main(void)
{
int celsius,fahr;
fahr=150;
celsius=5*(fahr-32)/9;
printf("fahr=%d,celsius=%d\n",fahr,celsius);
return 0;
}
【练2-5】
不能,计算机不识别;会影响,整型之间的乘除运算均为0。
【练2-6】
#include<stdio.h>
#include<math.h>
int main(void)
{
int h;
float a,t;
h=100;
a=2*h/10;
t=sqrt(a);
printf("h=%d,t=%.2f\n",h,t);
return 0;
}
[练2-7]
不可以;可以
[练2-8]
#include<stdio.h>
int main(void)
{
int celsius,fahr;
printf("Enter fahr:");
scanf("%d",&fahr);
celsius=5*(fahr-32)/9;
printf("fahr=%d,celsius=%d",fahr,celsius);
return 0;
}
[练2-9]
#include<stdio.h>
int main(void)
{
int a,b,c,d;
printf("Enter a:");
scanf("%d",&a);
printf("Enter b:");
scanf("%d",&b);
printf("Enter c:");
scanf("%d",&c);
d=(a b c)/3;
printf("d=%d",d);
return 0;
}
[练2-10]
#include<stdio.h>
int main(void)
{
double x,y;
printf("Enter x:");
scanf("%lf",&x);
if(x!=0)
{
y=1/x;
}
else
{
y=0;
}
printf("y=f(%f)=%.3f",x,y);
return 0;
}
[练2-11]
#include<stdio.h>
#include<math.h>
int main(void)
{
double x,y;
printf("Enter x:");
scanf("%lf",&x);
if(x<0)
{
y=pow(x,5.0) x*2 1/x;
}
else
{
y=sqrt(x);
}
printf("y=f(%f)=%.2f",x,y);
return 0;
}
[练2-12]
#include<stdio.h>
int main(void)
{
int lower,upper,fahr;
double celsius;
printf("Enter lower:");
scanf("%d",&lower);
printf("Enter upper:");
scanf("%d",&upper);
printf("fahr celsius\n");
for(fahr=lower;fahr<=upper;fahr=fahr 2)
{
celsius=(5.0/9.0)*(fahr-32);
printf(" %d %.1f\n",fahr,celsius);
}
return 0;
}
[练2-13]
#include<stdio.h>
int main(void)
{
int i,n;
double sum;
printf("Enter n:");
scanf("%d",&n);
sum=0;
for(i=1;i<=n;i )
{
sum=sum 1.0/i;
}
printf("sum is %.3f\n",sum);
return 0;
}
[练2-14]
#include<stdio.h>
int main(void)
{
int i,n,denominator;
double sum,item;
printf("Enter n:");
scanf("%d",&n);
sum=0;
for(i=1;i<=n;i )
{
denominator=2*i-1;
item=1.0/denominator;
sum=sum item;
}
printf("Sum is %.3f",sum);
return 0;
}
[练2-15]
#include<stdio.h>
int main(void)
{
int i,n,denominator,flag;
double item,sum;
printf("Enter n:");
scanf("%d",&n);
flag=1;
sum=0;
denominator=1;
for(i=1;i<=n;i )
{
item=flag*1.0/denominator;
sum=item sum;
flag=-flag;
denominator=denominator 3;
}
printf("Sum is %.3f\n",sum);
return 0;
}
[练2-16]
#include<stdio.h>
int main(void)
{
int m,n,i,sum;
double a,b;
printf("Enter m:");
scanf("%d",&m);
printf("Enter n:");
scanf("%d",&n);
a=1;b=1;
for(i=1;i<=m;i )
{
a=a*i;
}
for(i=1;i<=n;i )
{
b=b*i;
}
sum=a b;
printf("Sum is %d\n",sum);
return 0;
}
[练2-17]
10
[练2-18]
#include<stdio.h>
#include<math.h>
int main(void)
{
int i,n;
double product;
printf("Enter n:");
scanf("%d",&n);
for(i=0;i<=n;i )
{
product=pow(3,i);
printf("pow(3,%d)=%.0f\n",i,product);
}
return 0;
}
[练2-19]
#include<stdio.h>
double fact(int n);
int main(void)
{
int i,n;
double result;
printf("Enter n:");
scanf("%d",&n);
for(i=1;i<=n;i )
{
result=fact(i);
printf("%d!=%.0f\n",i,result);
}
return 0;
}
double fact(int n)
{
int i;
double product;
product=1;
for(i=1;i<=n;i )
{
product=product*i;
}
return product;
}
[练2-20]
#include<stdio.h>
double fact(int n);
int main(void)
{
int m,n;
double compose;
printf("m<=n\n");
printf("Enter m:");
scanf("%d",&m);
printf("Enter n:");
scanf("%d",&n);
compose=fact(n)/fact(m)/fact(n-m);
printf("Compose is %.0f\n",compose);
return 0;
}
double fact(int n)
{
int i;
double product;
product=1;
for(i=1;i<=n;i )
{
product=product*i;
}
return product;
}
[习题2-1]
#include<stdio.h>
#include<math.h>
int main(void)
{
int num1,num2,sum,difference;
double accumulate,quotient,surplus;
printf("Enter num1:");
scanf("%d",&num1);
printf("Enter num2:");
scanf("%d",&num2);
sum=num1 num2;
difference=num1-num2;
accumulate=num1*num2;
quotient=num1/num2;
surplus=fmod(num1,num2);
printf("sum is %d\ndifference is %d\n",sum,difference);
printf("accumulate is %.0f\n",accumulate);
printf("quotient is %.0f\n",quotient);
printf("surplus is %.0f\n",surplus);
return 0;
}
[习题2-2]
#include<stdio.h>
int main(void)
{
int x;
double y,result;
printf("Enter x:");
scanf("%d",&x);
if(x<=50)
{
y=0.53;
}
else
{
y=0.58;
}
result=x*y;
printf("result is %.2f\n",result);
return 0;
}
[习题2-3]
#include<stdio.h>
int main(void)
{
int n,i;
double x,product;
printf("Enter x:");
scanf("%lf",&x);
printf("Enter n:");
scanf("%d",&n);
product=1;
for(i=1;i<=n;i )
{
product=product*x;
}
printf("Product is %.2f\n",product);
return 0;
}
[习题2-4]
#include<stdio.h>
int main(void)
{
int m,n,i;
double result,part;
printf("m<=n\n");
printf("Enter m:");
scanf("%d",&m);
printf("Enter n:");
scanf("%d",&n);
result=0;
for(i=m;i<=n;i )
{
part=i*i 1.0/i;
result=result part;
}
printf("Result is %.2f\n",result);
return 0;
}
[习题2-5]
#include<stdio.h>
int main(void)
{
int flag,i,n;
double sum,part,denominator;
printf("Enter n:");
scanf("%d",&n);
flag=1;
sum=0;
for(i=1;i<=n;i )
{
denominator=i*2-1;
part=flag*i/denominator;
sum=sum part;
flag=-flag;
}
printf("Sum is %.2f\n",sum);
return 0;
}
[习题2-6]
#include<stdio.h>
#include<math.h>
int main(void)
{
int loan,month,year;
double rate,money;
printf("Enter loan:");
scanf("%d",&loan);
printf("Enter rate:");
scanf("%lf",&rate);
month=70;
printf("year money\n");
for(year=5;year<=30;year )
{
money=loan*rate*pow(1 rate,month)/(pow(1 rate,month)-1);
month=month 12;
printf(" %2.d %f\n",year,money);
}
return 0;
}
[习题2-7]
#include<stdio.h>
#include<math.h>
int main(void)
{
int n,i,part,sum;
printf("Enter n:");
scanf("%d",&n);
sum=0;
for(i=1;i<=n;i )
{
part=pow(2,i);
sum=sum part;
}
printf("Sum is %d\n",sum);
return 0;
}
[习题2-8]
#include<stdio.h>
double fact(int n);
int main(void)
{
int n,i,e,part;
printf("Enter n:");
scanf("%d",&n);
e=0;
for(i=0;i<=n;i )
{
part=fact(i);
e=e part;
}
printf("e=%d\n",e);
return 0;
}
double fact(int n)
{
int i,product;
product=1;
for(i=1;i<=n;i )
{
product=product*i;
}
return product;
}

猜你喜欢

转载自blog.csdn.net/sometimesnevermind/article/details/82720085