完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx

上传人:b****2 文档编号:11639502 上传时间:2023-06-01 格式:DOCX 页数:45 大小:23.87KB
下载 相关 举报
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第1页
第1页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第2页
第2页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第3页
第3页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第4页
第4页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第5页
第5页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第6页
第6页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第7页
第7页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第8页
第8页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第9页
第9页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第10页
第10页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第11页
第11页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第12页
第12页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第13页
第13页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第14页
第14页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第15页
第15页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第16页
第16页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第17页
第17页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第18页
第18页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第19页
第19页 / 共45页
完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx_第20页
第20页 / 共45页
亲,该文档总共45页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx

《完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx》由会员分享,可在线阅读,更多相关《完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx(45页珍藏版)》请在冰点文库上搜索。

完整版全国计算机等级考试二级教程C语言程序设计课后习题答案.docx

完整版全国计算机等级考试二级教程C语言程序设计课后习题答案

全国计算机等级考试二级教程--C语言程序设计》课后习题答案

第一章

1.1EXE

1.2COBJEXE

1.3顺序选择循环

第二章

1.选择题

2.1B2.2D2.3B2.4A2.5C2.6A2.7B

2.8B2.9D2.10C2.11B2.12B2.13A

2.填空题

2.141112

2.154.24.2

2.16{}定义执行语句

2.17关键字用户标识符

2.18intfloatdouble

2.19floata1=1;floata2=1;

2.20存储单元

2.213.5

2.22(a*b)/ca*b/ca/c*b

2.23把常量10赋给变量s

2.24位1或0

2.2581270111111-12810000000

2.2632767-327681000000000000000

2.2710816

3.上机改错题

2.28

#include"stdio.h";删除行尾的";"

*要紧靠“/”,即应为“/*”和“*/

注释符号不可嵌套使用

main();/*mainfunction*/删除")"后的";",注释中的

函数开始处遗失了一个“{”

floatr,s;/*/*risradius*/,/*sisareaofcircuilar*/*/

r=5.0;

s=3.14159*r*r;

printf("%f\n",s)行尾遗失了“;”函数结束处遗失了一个“}”

2.29

#include"stdio.h"

main/*mainfunction*/main后遗失了“()”

{

floata,b,c,v;/*a,b,caresides,visvolumeofcube*/a=2.0;b=3.0;c=4.0行尾遗失了“;”

v=a*b*c;

printf("%f\n",v)行尾遗失了“;”

}

第三章

一.选择题

3.1C3.2C3.3D3.4C3.5D3.6B3.7C3.8D3.9A3.10B

3.11C3.12D3.13D3.14A3.15C3.16C3.17C3.18无答案3.19C3.20B

二.填空题

3.21

(1)-2002500

(2)i=-200,j=2500

(3)i=-200

j=2500

3.221200

3.23一条语句;

3.24;

3.25100,25.81,1.8923410025.811.8923410025.811.89234

3.26x=127,x=127,x=177,x=7f,x=127

3.27x=127,x=127,x=$127,x=$000127,x=%06d

3.28a=513.789215,a=513.79,a=513.78921500,a=513.78921500

三.编程题和改错题

3.29修改后的程序如下:

main()

{

doublea,b,c,s,v;printf("inputa,b,c:

");scanf("%lf%lf%lf",&a,&b,&c);s=a*b;

v=a*b*c;printf("a=%f,b=%f,c=%f\n",a,b,c);printf("s=%f,v=%f\n",s,v);

}

3.30

#include

main()

{

inta=560,b=60;

printf("560minuteis%dhourand%dminute.\n",a/b,a%b);}

3.31

#include

main()

{

inta,b;a=1500;b=350;

printf("adivbis:

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

%d\n",a%b);

}

3.32

#includemain(){doublea,b,c,ave;

printf("input3doublenumber:

\n");scanf("%lf%lf%lf",&a,&b,&c);

printf("%.1f\n",(a+b+c)/3);

}

3.33

#include

voidmain()

{

inta,b,c,t;printf("请依次输入整数a,b,c:

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

printf("\n你输入的值是:

a=%d,b=%d,c=%d\n",a,b,c);t=b;b=a;a=c;c=t;

printf("交换之后的值是:

a=%d,b=%d,c=%d\n",a,b,c);}

第四章

一.选择题

4.1A4.2A4.3A4.4D4.5C4.6A4.7B4.8C4.9D4.10C二.填空题

4.11非00

4.12<>>=<=同级==!

=同级

4.13!

&&||

4.15!

4.16a==b||a4||x<-4

4.171

4.18x<=01>0

4.19322

4.20*#

三.编程题

4.21略

4.22

#include/*检查日期的合法性*/

intcheckdate(intyear,intmonth,intday)

{

if(year<1900||year>2005)

{

printf("输入的年份无效!

\n");return0;

}

elseif(month<0&&month>12)

{

printf("输入的月份无效!

\n");return0;

}

elseif(day<=0&&day>31)

{

printf("输入的日期无效!

\n");return0;

}

else

{

switch(month)

{

case4:

case6:

case9:

case11:

if(day>30)

{

printf("输入的日期无效!

\n");return0;

}

break;

case2:

if((year%4==0&&year%100!

=0)||year%400==0){

if(day>29)

{

printf("输入的日期无效!

\n");return0;

}

}

else

{

if(day>28)

{

printf("输入的出生日期无效!

\n");

return0;

}

}

break;

}/*endofswitch(m0)*/

}

return1;

}

voidmain()

{

inty0,m0,d0;/*生日*/

inty1,m1,d1;/*当前日期*/

intyears,months,days;/*实足年龄*/

printf("请输入学生的生日:

");scanf("%d%d%d",&y0,&m0,&d0);

if(checkdate(y0,m0,d0))

{

printf("请输入当前日期:

");scanf("%d%d%d",&y1,&m1,&d1);

/*当前日期合法性检查*/

if(!

checkdate(y1,m1,d1))

{

return;

}

elseif(y0>y1)

{

printf("出生年份比当前年份晚!

\n");

return;

}

elseif(y0==y1)

{

if(m0>m1)

{

printf("出生年月比当前年月晚!

\n");

return;

}

elseif(m0==m1)

{

if(d0>d1)

{

printf("出生年月日比当前年月日晚!

\n");

return;

}

}

}

}

/*计算实足年龄*/years=y1-y0;months=m1-m0;days=d1-d0;

/*修正实足年龄天数*/if(days<0)

{months--;

switch(m1)

{

case1:

case5:

case7:

case10:

case12:

days+=30;break;

case2:

case4:

case6:

case8:

case9:

case11:

days+=31;break;

case3:

if((y1%4==0&&y1%100!

=0)||y1%400==0){

days+=29;

}else{days+=28;

}

break;

}/*endofswitch(m1)*/

}/*endofif(days<0)*/

/*修正实足年龄月数*/if(months<0)

{

months+=12;

years--;

}/*endofif(months<0)*/printf("出生日期:

%d年%d月%d日\n",y0,m0,d0);

printf("当前日期:

%d年%d月%d日\n",y1,m1,d1);

printf("实足年龄:

%d年%d月%d日\n",years,months,days);

return;

}

4.23

#include

voidmain()

{

inta;

printf("请输入一个整数:

");

scanf("%d",&a);

if(a%2==0)

{

printf("%d是偶数\n",a);

}

else

{

printf("%d是奇数\n",a);

}

}

4.24

#include

voidmain()

{

inta,b,c,temp,max;

printf("请输入三个整数:

");scanf("%d%d%d",&a,&b,&c);temp=(a>b)?

a:

b;max=(temp>c)?

temp:

c;

printf("\n");

%d.\n",max);

printf("你输入的数中最大的是}

4.25

(1)不嵌套的if语句

#include

voidmain()

{

intx,y;

printf("inputx:

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

if(x>-5&&x<0)

{

printf("yis%d\n",y=x);

}

if(x==0)

{

printf("yis%d\n",y=x-1);

}

if(x>0&&x<10)

{

printf("yis%d\n",y=x+1);

}

if(x>=10||x<=-5)

{

printf("error\n");

}

}

(2)嵌套的if语句

#include

voidmain()

{

intx,y;printf("inputx:

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

printf("\n");

if(x<0)

{

if(x>-5)

{

printf("yis%d.\n",y=x);

}

else

{

printf("error!

\n");

}

}

if(0==x)

{

printf("yis%d.\n",y=x-1);

}

if(x>0)

{

if(x<10)

{

printf("yis%d.\n",y=x+1);

}

else

{

printf("error!

\n");

}

}

}

(3)if_else语句

#include

voidmain()

{

intx,y;

printf("inputx:

");

scanf("%d",&x);

if(x>-5&&x<0)

{

printf("yis%d.\n",y=x);

}

elseif(x==0)

{

printf("yis%d.\n",y=x-1);

}

elseif(x>0&&x<10)

{

printf("yis%d.\n",y=x+1);}

else

{

printf("error!

\n");

}

}

(4)switch语句

#include

voidmain()

{

intx,y;printf("inputx:

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

switch(x)

{

case-4:

case-3:

case-2:

case-1:

printf("yis%d.\n",y=x);break;

case0:

printf("yis%d.\n",y=x-1);break;

case1:

case2:

case3:

case4:

case5:

case6:

case7:

case8:

case9:

printf("yis%d.\n",y=x+1);break;

default:

printf("error!

\n");

}

}

第五章

选择题

5.1D5.2C5.3B5.4C5.5C5.6B5.7D5.8A5.9D5.10D二.填空题

5.11546

5.12死循环

5.13-1

5.1411

5.15d=1.0k++k<=n

5.16x>=0x

三.编程题

5.17

#include

voidmain()

{

inti;

intsig=1;

intsum=0;

for(i=1;i<=101;i++,i++)

{

sum+=sig*i;

sig*=-1;

}

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

}

5.18

(1)

#include

voidmain()

{

inti;

doublem=1.0;

doublee=1.0;

for(i=1;i<50;i++)

{

m*=i;

e+=1/m;

}

printf("e=%f\n",e);

}

(2)

#includevoidmain()

{inti=1;

doublem=1.0;

doublee=1.0;while(1/m>=0.0004)

{m*=i;

e+=1/m;i++;

}printf("e=%f\n",e);

}

5.19

#include

voidmain()

{intyear;

intcol=0;

for(year=1600;year<=2000;year++)

{

if((year%4==0&&year%100!

=0)||year%400==0){

printf("%d\t",year);col++;

if(col%5==0)

{printf("\n");

}

}

}printf("\n");

}

5.20#include#defineN7voidmain()

{

inti;

intj;

intm;

intk=N/2;

for(i=0;i{

m=i-k;

if(m<0)

{

m*=-1;

}

for(j=0;j{printf("");

}

for(j=0;j<2*(k-m)+1;j++)

{printf("*");

}

printf("\n");

}

}

第六章一.选择题

6.1B6.2D6.3A6.4A6.5B6.6D6.7D6.8B6.9A6.10A6.11C二.填空题

6.12-1

6.131

6.14ctype.h

6.151

6.1610A20B30C40D

6.177.29101.298AB

6.18A7.29B101.298

6.19ABC(每个字符后有三个空格)

三.编程题

6.20

#include

#defineN80

voidmain()

{charstr[N];intiLoop=0;gets(str);while(str[iLoop]){printf("%c-%d\t",str[iLoop],str[iLoop]);iLoop++;

if(iLoop%3==0){

printf("\n");

}}printf("\n");

}

6.21#include#defineN80

voidmain()

{charstr[N];

intnum=0;intiLoop=0;gets(str);

while(str[iLoop])

{

if(str[iLoop]>='0'&&str[iLoop]<='9'){

num=10*num+(str[iLoop]-'0');

}iLoop++;

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

}

6.22#include#include

#defineN80

voidmain(){charstr[N];

intnum=-1;

do

{

gets(str);

num++;

}while(strcmp(str,"EOF"));

printf("您输入了%d行字符!

\n",num);

}

6.23

#include

#defineN80

voidmain()

{

charstr[N];

intiLoop=0;

intnum=0;

gets(str);

while(str[iLoop]&&iLoop

{

if(str[iLoop]>='a'&&str[iLoop]<='z')

{

num++;

}

iLoop++;

}

printf("您输入了字符中有%d个小写字母!

\n",num);}

6.24

#include

voidmain()

{

intline;

intiLoop1;

intiLoop2;

printf("请输入图案的行数(不大于26):

");scanf("%d",&line);

for(iLoop1=0;iLoop1

{

for(iLoop2=0;iLoop2

{printf("");

}

for(iLoop2=0;iLoop2<2*iLoop1+1;iLoop2++){

printf("%c",iLoop1+'A');

}printf("\n");

}

}

第七章

一.选择题

7.1C7.2C7.3B7.4C7.5A7.6D7.7A

二.填空题

7.812

7.99.000000

7.104

7.11n=1s

7.12<=yz*x

7.131s*i0f(k)

三.程序调试和编程题

7.14fun(intn){intk,yes;

for(k=2;k<=n/2;k++)

{

if(n%k==0){yes=0;break;}elseyes=1;

}returnyes;

}

7.15

intmymod(inta,intb)

{returna%b;

}

7.16doublefun(intn){

doublesum=0;

intiLoop;

intsig=-1;

for(iLoop=1;iLoop<=n;iLoop++){sig*=-1;

sum+=sig*1.0/iLoop;

}

returnsum;

}

7.17doublefun(intn){doublet=1.0;intiLoop;longtmp;

for(iLoop=2;iLoop<=n;iLoop++){

tmp=iLoop*iLoop;

t-=1.0/tmp;

}returnt;

}

7.18

#include

#include

doublefun(doublex)

{

returnx*x+5*x+4;

}

voidmain()

{

intx=2;

printf("y1=%f\n",fun(x));printf("y2=%f\n",fun(x+15));printf("y3=%f\n",fun(sin(x)));

}第八章

一.选择题

8.1A8.2B8.3B8.4C8.5B8.6B8.7C8.8D8.9B8.10C8.11C8.12C二.填空题

8.13110

8.1471

8.15

(1)char*p=&ch;

(2)p=&ch;(3)scanf("%c",p);(4)*p='A';(5)printf("%c",*p);

8.16

(1)s=p+3;

(2)s=s-2(3)50(4)*(s+1)(5)2(6)1020304050

三.编程题

8.17

voidfun(doublex,doubley,double*sum,double*div)

{

*sum=x+y;

*div=x-y;

return;

}

8.18

voidfun(doublex,doubley,doublez,double*max,double*min)

{

*max=x;

*min=x;

if(*max

{

*max=y;

}

if(*max

{

*max=z;

}

if(*min>y)

{

*min=y;

}

if(*min>z)

{

*min=z;

}

return;

}

第九章

一.选择题

9.1D9.2A9.3A9.4C9.5C9.6A9.7B9.8D9.9C9.10C

9.11C9.12D9.13D9.14A9.15A9.16A9

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

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2