哈工程C语言教材课后答案.doc
《哈工程C语言教材课后答案.doc》由会员分享,可在线阅读,更多相关《哈工程C语言教材课后答案.doc(31页珍藏版)》请在冰豆网上搜索。
![哈工程C语言教材课后答案.doc](https://file1.bdocx.com/fileroot1/2022-10/7/0617f851-1ddf-462b-8e81-325b520a8378/0617f851-1ddf-462b-8e81-325b520a83781.gif)
第一章
1.2有三个数A、B、C,设计算法,求三个数中最大的数并输出。
(可用自然语言或流程图表示)。
#include
voidmain()
{
inta,b,c,max;
printf("pleaseinputthreenumbers:
\n");
scanf("%d%d%d",&a,&b,&c);
max=a;
if(b>a)
max=b;
if(c>max)
max=c;
printf("theansweris%d\n",max);
}
1.3设计算法,求N个整数的平均值。
#include
voidmain()
{
intN,i;
floataver,a,s=0;
printf("pleaseinputtheamountofthenumber:
\n");
scanf("%d",&N);
for(i=0;i{
printf("pleaseinputthenumber\n");
scanf("%f",&a);
s=s+a;
}
aver=s/N;
printf("theaverageis%f",aver);
}
第二章
1.填空题⑴换行、回车⑵整型变量_⑶整型⑷_6_⑸2.5
2.选择题
⑴_A_⑵_A_⑶A_⑷_B_⑸_D⑹C⑺C⑻D⑼C⑽D⑾B⑿D⒀B⒁D
3.⑴答案:
6,0,6⑵答案:
8,10,16⑶答案:
3.500000⑷答案:
6
⑸答案:
1⑹答案:
261⑺答案:
16⑻答案:
0
4.编程题
⑴输入长方形的长和宽,输出长方形的周长和面积。
#include
voidmain()
{
inta,b,l,s;
scanf(“%d%d”,&a,&b);
l=(a+b)*2;
s=a*b;
printf(“%d,%d”,l,s);
}
⑵输入一个字符,输出其ASCII代码。
#include
voidmain()
{chara;
printf("pleaseinputthechar");
scanf("%c",&a);
printf("theASCIIis%d",a);
}
⑶输入3个整数,计算并输出它们的平均值。
#include
voidmain()
{
inta,b,c;
floataver;
scanf(“%d%d%d”,&a,&b,&c);
aver=float(a+b+c)/3;
printf(“%f”,aver);
}
⑷已知整型变量a、b、c的值,根据以下算式编写程序求y的值。
#include
#include
voidmain()
{inta,b,c;
printf("pleaseinputthenumofabc:
");
scanf("%d%d%d",&a,&b,%c);
printf("theyis%f",(3.8*(pow(b,2)+a*c))/(6*a));
}
5.设a和n已定义为整型变量,a=12,求下面表达式运算后a的值。
⑴a+=a24⑵a-=210⑶a*=2+360
⑷a/=a+a0⑸a%=(n%=2),n的值等于50⑹a+=a-=a*=a0
第三章
一、选择题1_C_2.C_3.C4.D5.D_
二、填空题1.%f_2、%s3、12,56,789.0000004、6e,16_5、1,1,3___
三、编程题
1.编写一个程序,从键盘上输入3个数,求其和并输出。
#include
voidmain()
{
inta,b,c,d;
printf("pleaseinputthenumofa,b,c:
");
scanf("%d%d%d",&a,&b,&c);
d=a+b+c;
printf("thesumofa,bandcis%d",d);
}
2.输入一个正整数,分别输出它的八进制和十六进制数形式。
#include
voidmain()
{
intm;
printf("pleaseinputthem:
");
scanf("%d",&m);
printf("\nbajinzhishuzhishi:
%o",m);
printf("\nshiliujinzhishuzhishi:
%x",m);
}
3.编程把11325秒转换成“小时:
分钟:
秒”的形式
#include
voidmain()
{
inta=11325;
inth,m,s;
h=a/3600;
m=a%3600/60;
s=a%3600%60;
printf("%d:
%d:
%d",h,m,s);
}
4.编程序,求a+︱b︱的值,a,b为任意数。
本题可调用求绝对值的函数fabs,此函数包含在math.h文件中。
#include
#include
voidmain()
{
doublea,b;
printf("pleaseinputthenumofaandb:
");
scanf("%lf%lf",&a,&b);
printf("\na+|b|=%lf",a+fabs(b));
}
5.编程序,求平面上两点之间的距离。
设第1个点的坐标为(x1,y1),第2点的坐标为(x2,y2),则这两个点的距离为:
d=
#include
#include
voidmain()
{
floatx1,y1,x2,y2,d;
printf("\nshurudi1gediandezuobiao:
");
scanf("%f%f",&x1,&y1);
printf("\nshurudi2gediandezuobiao:
");
scanf("%f%f",&x2,&y2);
d=sqrt(pow((x1-x2),2)+pow((y1-y2),2));
printf("\njulidwei:
%f",d);
}
第四章
一、阅读程序,回答问题
1.答案:
12.答案:
63、B4.答案:
6.0000005答案:
8
6.答案:
27.答案:
k=11
二、填空
1.答案:
a==b或b==a或!
(a!
=b)或a=b或b=a2.答案:
(1)<0
(2)!
=0
3.答案:
(1)max(2)max(1)m%2==1
(2)m%2==0
三、编程
1.输入一个整数,判断其为奇数还是偶数。
#include
voidmain()
{
inta;
printf("Pleaseinputaninteger:
");
scanf("%d",&a);
if(a%2==0)
printf("nishurudeshu%dshioushu.\n",a);
else
printf("nishurudeshu%dshijishu.\n",a);
}
2.编写一个程序,实现功能是:
输入一个实数,按1输出此数的相反数,按2输出此数的平方根,按3输出此数的平方。
#include
#include
voidmain()
{
doublef;
inta;
printf("qingshuruyigeshu:
");
scanf("%f",&f);
printf("\nqingshuru1huo2huo3\n");
printf("\nan1shuchuxiangfanshu");
printf("\nan2shuchupingfanggen");
printf("\nan3shuchupingfang");
scanf("%d",&a);
if(a==1)
printf("%f\n",-f);
elseif(a==2)
printf("%f\n",sqrt(f));
elseif(a==3)
printf("%f\n",f*f);
else
printf("shurucuowu!
");
}
3.输入字符,输出其类型。
ASCII值小于32的为控制字符,在“0”和“9”之间的为数字,在“A”和“Z”之间为大写字母,在“a”和“z”之间为小写字母,其余则为其它字符。
#include
voidmain()
{
chara;
scanf(“%c”,&a);
if(a<32&&a>0)
printf(“thisisaControlCharacter”);
if(a>=’0’&&a<=’9’)
printf(“thisisanumber”);
if(a>’A’&&a<’Z’)
printf(“thisisacapitalletter”)
if(a>’a’&&a<’z’)
printf(“thisisalowercasenumber”);
else
printf(“thisisanothercharacter”);
}
4.输入某年某月某日,判断这一天是这一年的第几天。
#include
voidmain()
{
inta,b,c,k,s=0;
printf("qingshurunian,yue,ri:
");
scanf("%d,%d,%d",&a,&b,&c);
if((a%4==0&&a%100!
=0)||a%400==0)
k=29;
else
k=28;
switch(b)
{
case12:
s+=30;
case11:
s+=31;
case10:
s+=30;
case9:
s+=31;
case8:
s+=31;
case7:
s+=30;
case6:
s+=31;
case5:
s+=30;
case4:
s+=31;
case3:
s+=k;
case2:
s