C新教材课后习题参考答案汇总.docx
《C新教材课后习题参考答案汇总.docx》由会员分享,可在线阅读,更多相关《C新教材课后习题参考答案汇总.docx(18页珍藏版)》请在冰豆网上搜索。
![C新教材课后习题参考答案汇总.docx](https://file1.bdocx.com/fileroot1/2023-4/19/5a020aa5-3fb5-41bc-8160-7217d63a6d88/5a020aa5-3fb5-41bc-8160-7217d63a6d881.gif)
C新教材课后习题参考答案汇总
第一章
一、判断题
1
2
3
4
5
6
7
8
F
F
T
F
T
F
F
F
第二章
一、判断题
1
2
3
4
5
6
7
8
9
10
F
T
F
F
F
T
T
F
F
T
二、选择题
1
2
3
4
5
6
7
8
9
10
D
A
C
C
D
D
C
B
C
C
三、填空题
1、1个
2、11.5
3、2845
4、运算符的优先级结合性
5、double
6、intk1=7,k2=7;-2
7、2.57.5
8、2.000000
9、double型
10、ASCII码
第三章
一、选择题
1
2
3
4
5
6
D
A
C
C
C
A
二、阅读下列程序,写出运行结果
1、5678
11,21
2、n=69k=96
3、144
044
4、313332
110010
5、
(1)i的值为52, c的值为’$’, f的值为9.17, d1的值为3.141593
(2)i的值为52, c的值为’9’, f的值为0.17, d1的值为3.141593
(3)i的值为52, c的值为’9’, f的值为0.17, d1的值为3.141593
6、3.00%5.00%6.007.483
三、程序设计题
1、#definePI3.1415
#include“stdio.h”
main()
{floatr,h,v;
printf(“inputr,h:
”);
scanf(“%f,%f”,&r,&h);
v=PI*r*r*h;
printf(“v:
%f”,v);
}
2、#include“stdio.n”
main()
{chara,b,c;
printf(“inputa,b,c:
”);
scanf(“%c,%c,%c”,&a,&b,&c);
printf(“%c,%d\n”,a,a);
printf(“%c,%d\n”,b,b);
printf(“%c,%d\n”,c,c);
}
3、#include“stdio.h”
main()
{
intk;
printf(“k=”);
scanf(“%d”,k);
printf(“%o,%x”,k,k);
}
4、#include“stdio.h”
main()
{
charch;
printf(“inputch:
”);
scanf(“%c”,&ch);
clrscr();
printf(“%c%c\n”,ch,ch);
printf(“%c%c\n”,ch,ch);
printf(“%c%c\n”,ch,ch);
printf(“%c\n”,ch,ch);
printf(“%c%c\n”,ch,ch);
printf(“%c%c\n”,ch,ch);
printf(“%c%c\n”,ch,ch);
}
5、#include“stdio.h”
main()
{
floatcj1,cj2,cj3;
printf(“inputcj1,cj2,cj3:
”);
scanf(“%f,%f,%f”,&cj1,&cj2,&cj3);
printf(“总成绩为:
%5.1f,平均成绩为:
%4.1f”,c1+c2+c3,(c1+c2+c3)/3);
}
第四章
一、单项选择题
1
2
3
4
5
6
7
B
A
C
A
B
A
B
二、阅读下列程序,写出运行结果
1.F
2.Hello!
Goodmorning!
Bye-Bye!
3.x三、程序填空题
1._c>=’a’&&c<=’u’
__c=c-21_______
2.scanf(“%d,%d,%d”,&x,&y,&z);
y>z
四、程序设计题
1.#include
#include
main()
{floatx;
printf(“inputx”);
scanf(“%f”,&x);
if(x>0)printf(“%f”,sqrt(x));
elseif(x<0)printf(“%f”,fabs(x));
elseprintf(“Bye,Bye”);
}
2.#include
main()
{charc;
c=getchar();
if(c>=’A’&&c<=’Z’)putchar(c+32);
elsec=getchar();
}
3.#include
main()
{intscore,grade;
printf("Inputscore:
");
scanf("%d",&score);
grade=score/10;
switch(grade)
{case0:
case1:
case2:
case3:
case4:
case5:
printf("grade=E");break;
case6:
printf("grade=D");break;
case7:
printf("grade=C");break;
case8:
printf("grade=B");break;
case9:
case10:
printf("grade=A");break;
default:
printf("noscore");break;
}
}
4.#include
main()
{intx,sum;
scanf(“%d”,&x);
if(x>=1000&&x<=9999)
sum=x%10+x/10%10+x/100%10+x/1000;
printf(“sum=%d”,sum);
}
5.#include
voidmain()
{doublerate,salary,tax;
scanf(“%lf”,&salary);
if(salary<850)rate=0;
elseif(salary<1350)rate=0.05;
elseif(salary<2850)rate=0.10;
elseif(salary<5850)rate=0.15;
elserate=0.20;
tax=rate*(salary-850);
printf(“tax=%0.2lf\n”,tax);
}
6.#include
main()
{charc;
c=putchar();
if(c>=’a’&&c<=’z’)c=c+32;
elseif(c>=’A’&&c<=’Z’)c=c-32;
printf(“%c”,c);
}
第五章
一、单项选择题
1
2
3
4
5
6
7
8
C
A
B
C
C
A
C
B
二、阅读下列程序,写出运行结果
1、1-2
2、5
3、135
4、a=8
5、a=3,i=7
6、1#3#21#1173#
7、*#*#
三、程序填空题
1.fabs(item)>=0.00001
n++;
2.if(in<0)in=-in;
s=0;
digit=in%10;
in=in/10;
3.n!
=0
n=n/10;
4.if(n<0)n=-n;
s=s+n%10;
四、程序设计题
1.
#include"stdio.h"
main()
{inti;
longs=0;
for(i=1;i<=1000;i++)
if(i%2!
=0)s+=i;
printf(“ld”,s);
}
2.
#include"stdio.h"
#include"math.h"
main()
{
intn,m,i,flag,x,y;
scanf(“%d%d”,&x,&y);
if(x>y)
{i=x;x=y;y=i;}
for(n=x;n<=y;n=n++)
{m=sqrt(n);
flag=0;
for(i=2;i<=m;i++)
{if(n%i==0)
{flag=1;break;
}
}
if(flag==0)
printf("%5d",n);
}
}
3.
#include
#include
voidmain()
{doubles=0;
inti;
for(i=2;i<=10;i++)
s=s+sqrt(i);
printf("%.10f\n",s);
}
4.
#include
voidmain()
{longs=1,k=1,n;
inti;
scanf(“%ld”,n);
for(i=2;i<=n;i++)
{k=k*i;
s=s+k;
}
printf("%ld",s);
}
5.
#include
main()
{floats,h;
inti;
s=100;h=s/2;
for(i=2;i<=10;i++)
{s+=h*2;
h/=2;
}
printf(“s=%f\th=%f\n”,s,h);
}
6.
#include
voidmain()
{intcock,hen,chick;
for(cock=0;cock<=20;cock++)
for(hen=0;hen<=35;hen++)
for(chick=0;chick<=100;chick+=3)
if(cock+hen+chick==100)
if(cock*5+hen*3+chick/3==100)
printf("%d,%d,%d\n",cock,hen,chick);
}
7.
#include
#include
voidmain()
{floats=0,a=81;
inti;
s=81;
for(i=1;i<30;i++)
{a=sqrt(a);
s=s+a;
}
printf("%.3f",s);
}
第六章
一、单项选择题
1
2
3
4
5
6
7
8
A
D
D
C
C
D
C
ABD
9
10
11
12
13
14
15
16
A
D
C
D
C
A
D
A
二、阅读下列程序,写出运行结果
1、1
2、1345
3、hello
4、helloeverybody
5、21
三、程序填空题
1、i==j
a[i][j]
2、&a[i]
i%4==0
putchar(‘\n’);
3、str[0]
s
4、#include“math.h”
m%i==0
h%10==0
5、gets(s);
s[I]!
=’c’
s[j]=’\0’;
四、编程题(略)
第七章
一、单项选择题
1
2
3
4
5
6
7
8
AD
D
A
B
A
B
B
A
9
10
11
12
13
14
A
A
D
C
D
D
二、阅读下列程序,写出运行结果
1、7
2、1!
=1
2!
=2
3!
=6
3、6
4、-52379
5、a=1
b=1
a=1
b=2
6、A+B=9
7、6
8、6,5
9、0,3
10、-2
三、编程题(略)
第八章
一、单项选择题
1
2
3
4
5
6
7
8
C
B
C
D
A
B
C
C
二、程序设计题
1、
#definemod(i,j)(i)%(j)
main()
{
intx,y,z;
printf("imputtwointeger:
\n");
scanf("%d%d",&x,&y);
z=mod(x,y);
printf("%d\n",z);
}
2、
#definelower(i)(i)>=’a’&&(i)<=’z’?
(i)-32:
i
main()
{
charx,y;
printf("imputalowercase:
\n");
scanf("%c",&x);
y=lower(x);
printf("%c\n",y);
}
第九章
一、单项选择题
1
2
3
4
5
6
7
8
9
10
11
12
13
B
D
D
A
B
C
D
B
A
D
D
A
D
二、阅读下列程序,写出运行结果
1、HELLO!
2、ef
3、3,5,5,3
4、-9
5、CDG
三、程序填空题
1、num=*b
num=*c
2、*(a+i)=*(a+j)
a+j
3、char*str
*p!
=’\0’
*str=’\0’;
4、char*s
*s-‘0’
n*flag
5、scanf(“%d”,&n);
n==7?
weekname[0]:
weekname[n]
四、程序设计题(略)
第十章
一、选择题
1
2
3
4
5
6
7
8
9
10
C
A
B
A
C
B
C
D
B
C
二、程序阅读题
1、7,3
2、10,x
三、程序填空题
1、p!
=null
c++;
p->next
2、i++<3
old=p->age
q->name,q->age
3、&a->x
&a->y
sqrt(a->x*a->x+a->y*a->y)
第十一章
一、选择题
1
2
3
4
5
6
7
A
B
B
D
C
C
B
二、填空
1、字符流或二进制数据流
2、文本文件
3、EOF
4、标准输出、标准出错输出
5、返回NULL
6、fseek(fp,32,0)
三、程序填空题
1、#include
FILE*fp;
“abc.dat”,”ab”
fclose(fp);
2、intzm=0,qt=0;
ch=fgetc(fp)
qt++
3、intn=1;
gets(fname);
!
feof(in)
四、程序设计题(略)