c语言第五六章课后题Word文件下载.docx

上传人:b****3 文档编号:6179247 上传时间:2023-05-06 格式:DOCX 页数:27 大小:295.77KB
下载 相关 举报
c语言第五六章课后题Word文件下载.docx_第1页
第1页 / 共27页
c语言第五六章课后题Word文件下载.docx_第2页
第2页 / 共27页
c语言第五六章课后题Word文件下载.docx_第3页
第3页 / 共27页
c语言第五六章课后题Word文件下载.docx_第4页
第4页 / 共27页
c语言第五六章课后题Word文件下载.docx_第5页
第5页 / 共27页
c语言第五六章课后题Word文件下载.docx_第6页
第6页 / 共27页
c语言第五六章课后题Word文件下载.docx_第7页
第7页 / 共27页
c语言第五六章课后题Word文件下载.docx_第8页
第8页 / 共27页
c语言第五六章课后题Word文件下载.docx_第9页
第9页 / 共27页
c语言第五六章课后题Word文件下载.docx_第10页
第10页 / 共27页
c语言第五六章课后题Word文件下载.docx_第11页
第11页 / 共27页
c语言第五六章课后题Word文件下载.docx_第12页
第12页 / 共27页
c语言第五六章课后题Word文件下载.docx_第13页
第13页 / 共27页
c语言第五六章课后题Word文件下载.docx_第14页
第14页 / 共27页
c语言第五六章课后题Word文件下载.docx_第15页
第15页 / 共27页
c语言第五六章课后题Word文件下载.docx_第16页
第16页 / 共27页
c语言第五六章课后题Word文件下载.docx_第17页
第17页 / 共27页
c语言第五六章课后题Word文件下载.docx_第18页
第18页 / 共27页
c语言第五六章课后题Word文件下载.docx_第19页
第19页 / 共27页
c语言第五六章课后题Word文件下载.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

c语言第五六章课后题Word文件下载.docx

《c语言第五六章课后题Word文件下载.docx》由会员分享,可在线阅读,更多相关《c语言第五六章课后题Word文件下载.docx(27页珍藏版)》请在冰点文库上搜索。

c语言第五六章课后题Word文件下载.docx

else

%d是奇数\n"

else/*提示输入为负数*/

输入错误,%d为负数\n"

5-3、

math.h>

floata,b,c,l,s;

inputthreesides:

%f,%f,%f"

a,&

b,&

c);

if(a+b>

c&

&

a+c>

b&

b+c>

a)/*构成三角形的条件*/

l=(a+b+c)/2;

s=sqrt(l*(l-a)*(l-b)*(l-c));

printf("

三角形的面积是%.3f\n"

s);

else

不能构成三角形\n"

5-4、

floatm,s;

/*定义本金,利息和*/

intn;

/*定义期限*/

输入本金、期限:

%f,%d"

m,&

n);

switch(n)

case1:

/*存储年限为1年*/

s=m*pow(1+0.0225,n);

printf("

本金和=%.3f\n"

break;

case2:

/*存储年限为2年*/

s=m*pow(1+0.0243,n);

case3:

/*存储年限为3年*/

s=m*pow(1+0.0270,n);

case5:

/*存储年限为5年*/

s=m*pow(1+0.0288,n);

case8:

/*存储年限为8年*/

s=m*pow(1+0.03,n);

default:

/*提示输入错误*/

输入的期限有误"

5-5、

intyear,flag;

Entertheyear:

year);

if(year%100==0&

year%400==0||year%4==0)

flag=1;

flag=0;

if(flag==1)

%disaleapyear!

\n"

year);

%disnotaleapyear!

5-6、

(year%100==0&

year%400==0||year%4==0)?

(flag=1):

(flag=0);

5-7、

charch;

/*定义输入的字符*/

intm;

/*定义该字符的ASCII值*/

inputastringandpressEnter:

ch=getchar();

/*获取该字符*/

if(ch>

='

A'

&

ch<

Z'

)/*若为大写字符,则转化为小写*/

m=ch+32;

%c的小写字母:

%c\n"

ch,m);

elseif(ch>

a'

z'

)/*若为小写字符,则转化为大写并算出ASCII值*/

m=ch-32;

%c的大写字母为:

%c,其ASCII值为:

%d\n"

ch,m,m);

else/*若输入的不是字母,则只输出ASCII值*/

%c的ASCII值为:

ch,ch);

5-8、

/*获取该字符*/

)/*判断为大写*/

%c为大写字母\n"

ch);

)/*判断为小写*/

%c为小写字母\n"

elseif(ch=='

'

)/*判断为空格*/

%c为空格\n"

0'

9'

)/*判断为数字*/

%c是数字字符\n"

else/*判断为其他字符*/

%c是其他字符\n"

5-9

intscore;

inputthescore:

score);

if(score>

100||score<

0)/*判断师傅输入大于100的数或负数*/

成绩输入错误\n"

if(score>

=90)

score:

%d-------grade:

score,'

elseif(score>

=80)

B'

=70)

C'

=60)

D'

E'

5-10、

intyear,month,flag=1;

/*定义年份、月份、标识变量flag*/

输入年份:

if(year%400==0||year%100!

=0&

year%4==0)/*若为润年,flag=0,平年,flag=1*/

{flag=0;

输入月份:

month);

switch(month)

/*1,3,5,7,8,10,12月为31天*/

case7:

case10:

case12:

%d年的%d月有31天\n"

year,month);

/*2月需要判断润年和平年的情况*/

if(0==flag)

{printf("

%d年的%d月有29天\n"

else

%d年的%d月有28天\n"

case4:

/*4,6,9,11月为30天*/

case6:

case9:

case11:

/*若输入非1~12的月份,提示输入错误*/

月份输入错误\n"

第六章作业

6-1

(1)

分析:

这是一个二重嵌套循环,

I=1,j=1,打出1个空格和6个*

I=2,j=1和2,做2次循环打出2个空格和6个*

I=3,j=1,2,3,做3次循环打出3个空格和6个*

I=4,j=1,2,3,4,做4次循环打出4个空格和6个*

结果

6-1

(2)

开始:

k=4,n=0

第一次循环n<

4,n%2==0,n=n+1=1;

第二次循环n<

k,1%2==1,k=k-1=3,n=n+1=2;

第三次循环n<

k,2%2==0,n=n+1=3;

第四次循环n<

k不成立

结束:

输出n=3,k=3

6-1(3)

开始:

k=4,n=0;

第一次循环:

0<

4,0%2==0,break,

输出k=4,n=0;

6-2

(1)计算1+3+5+7+.......+99+101的值

inti,sum=0;

for(i=1;

i<

=101;

i=i+2)

sum=sum+i;

sum=%d\n"

sum);

(2)计算1*2*3+3*4*5+……+99*100*101

longi;

longterm,sum=0;

=99;

term=i*(i+1)*(i+2);

sum=sum+term;

sum=%ld\n"

(3)计算a+aa+aaa+…+aa…a(n个a)的值,n和a的值由键盘输入

longterm=0,sum=0;

inta,i,n;

inputa,n:

%d,%d"

for(i=1;

=n;

i++)

term=10*term+a;

/*将相邻的数乘以10,再加上之前的数*/

(4)计算1-1/2+1/3-1/4+…+1/99-1/100+…,直到最后一项的绝对值小于1e-4为止

intn=1;

floatterm=1.0,sign=1,sum=0;

while(sign>

=1e-4)

term=pow(-1,n-1)*sign;

/*计算每项因子*/

sign=(float)1/(n+1);

/*强制类型转换*/

n++;

sum=%f\n"

(5)利用sinx=x-x^3/3!

+x^5/5!

-x^7/7!

+….,计算最后一项的绝对值小于10(-5)时为止,输出e的值并统计累加的项数

intn=1,count=1;

floatx;

doublesum,term;

inputx:

sum=x;

term=x;

do{

term=(-1)*x*x*term/((n+1)*(n+2));

n=n+2;

count=count+1;

}while(fabs(term)>

1e-5);

sin(x)=%f,count=%d\n"

sum,count);

6-3

intx=1,find=0;

while(!

find)

if(x%2==1&

x%3==2&

x%5==4&

x%6==5&

x%7==0)

{

x=%d\n"

find=1;

}

x++;

错误分析:

1、while后不能加分号,否则进入死循环;

2、判等运算用的是双等号,不是单等号;

3、不管是否找,x都要自增运算,所以x++放在if语句的外面。

6-5、

伪代码:

定义华氏温度f,摄氏温度c

for(f=0;

f<

=300;

f=f+10)

输出华氏温度f;

c=5.0/9*(f-32);

输出摄氏温度;

intf=0;

/*定义华氏温度f*/

floatc=0;

/**定义摄氏温度c/

华氏温度--------摄氏温度\n"

f=f+10)/*产生0~300,并以10为间隔的温度值*/

%dF"

f);

-----"

c=5.0/9*(f-32);

/*将5写成5.0,防止发生整除运算*/

%.2fC\n"

c);

6-11、

intm=0;

/*定义最终输出的整数个数为m*/

floatn;

/*输入的数为n*/

longp=1,sum=0;

/*p为阶乘每次阶乘结果,sum为所有阶乘加和*/

pleaseinputthenumber:

m++;

/*m做自增运算*/

p=p*m;

/*每次阶乘结果*/

sum=sum+p;

}while(sum<

=n);

/*循环截止条件*/

m=%d\n"

m-1);

/*当不满足sum<

=n时,m已经多加了一次1,所以输出m-1*/

6-15、

intchicken;

intrabbit;

鸡--------兔\n"

for(chicken=1;

chicken<

98;

chicken++)/*鸡的数量从1~98中取*/

for(rabbit=1;

rabbit<

rabbit++)/*兔子的数量从1~98中取*/

if(2*chicken+4*rabbit==386&

chicken+rabbit==98)/*满足头为98,腿为386*/

{printf("

%d只%d只\n"

chicken,rabbit);

6-18、

类型一、

inti=1,j=1;

/*定义外部循环变量i,内部循环变量j*/

=9;

i++)/*输出表头1~9,每个数字占4位*/

{printf("

%-4d"

i);

/*换行*/

for(j=1;

j<

j++)/*输出‘-’,每个占4位*/

%-4c"

'

-'

i++)/*外部循环9次*/

for(j=1;

j++)/*内部循环9次*/

i*j);

/*输出结果,每个数字占4位*/

/*每行结束,要换行输出*/

类型二、

=i;

j++)/*内部循环i次*/

类型三、

intp=1;

for(p=1;

p<

=i-1;

p++)/*先打印每行的空格*/

/*定义占4位*/

for(j=i;

j++)/*内部循环9-i次*/

/*在空格后输出结果,每个数字占4位*/

6-20、

伪代码描述:

定义4位车号abcd;

for(a=0;

a<

a++)

令b=a;

for(c=0;

c<

c++)

令d=c;

if(c==a)重新产生c;

sum=1000*a+100*b+10*c+d

for(m=0;

m<

100;

m++)

if(sum==m*m)

输出abcd

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

/*定义4位车号为a,b,c,d*/

/*定义一个在0~100之间的整数,用于判断车号与m*m*/

intsum=0;

/*4位车号abcd*/

intp;

/*p=m*m*/

for(a=0;

a++)/*a在0~9中寻找*/

b=a;

/*b=a*/

for(c=0;

c++)/*c在0~9中寻找*/

d=c;

/*d=c*/

if(c==a)continue;

/*使产生的前两位车号与后两位车号不同*/

sum=1000*a+100*b+10*c+d;

/*计算abcd*/

for(m=0;

m++)/*在0~100的范围内寻找m*/

{

p=m*m;

if(sum==p)/*满足的丙的条件:

4位车号是一个整数的平方*/

{

printf("

4位车号:

%d%d%d%d\n"

a,b,c,d);

}

}

成绩

批阅教师

批阅日期

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

当前位置:首页 > 工程科技 > 环境科学食品科学

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

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