C语言程序设计邹显春版 课本答案Word文档格式.docx

上传人:b****3 文档编号:8007813 上传时间:2023-05-09 格式:DOCX 页数:26 大小:30.25KB
下载 相关 举报
C语言程序设计邹显春版 课本答案Word文档格式.docx_第1页
第1页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第2页
第2页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第3页
第3页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第4页
第4页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第5页
第5页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第6页
第6页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第7页
第7页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第8页
第8页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第9页
第9页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第10页
第10页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第11页
第11页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第12页
第12页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第13页
第13页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第14页
第14页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第15页
第15页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第16页
第16页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第17页
第17页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第18页
第18页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第19页
第19页 / 共26页
C语言程序设计邹显春版 课本答案Word文档格式.docx_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C语言程序设计邹显春版 课本答案Word文档格式.docx

《C语言程序设计邹显春版 课本答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言程序设计邹显春版 课本答案Word文档格式.docx(26页珍藏版)》请在冰点文库上搜索。

C语言程序设计邹显春版 课本答案Word文档格式.docx

{

floatx,y,bx,by;

x=208*2.87/287;

y=39.6*x/(10-2.08);

bx=x/10*100;

by=y/12.5*100;

printf("

bx=%5.1f\%\n"

bx);

by=%5.1f\%\n"

by);

}

确保通用性

#include<

stdio.h>

 

doublem1,m2,a,b,w1,w2;

请输入固体氯化钡样品的质量m1(g):

\n"

);

scanf("

%lf"

&

m1);

printf("

请输入加入水的质量m2(g):

m2);

请输入所取滤液的质量a(g):

a);

请输入完全反应后生成沉淀的质量b(g):

b);

w1=208*b/(287*a);

w2=208*b*(m1+m2)/(287*a*m1);

滤液中溶质的质量分数为:

%lf\n"

w1);

样品中氯化钡的质量分数为:

w2);

}

2.#include"

main()

*\n"

***\n"

*****\n"

}

3.#include"

#defineMAX(x,y)((x)>

(y)?

(x):

(y))

#defineMIN(x,y)((x)<

floata,b;

Pleaseentertworealnumbers:

\n"

scanf("

%f%f"

a,&

%f\t"

MIN(a,b));

%f\n"

MAX(a,b));

4.#include<

stdlib.h>

voidmain()

FILE*fp;

if((fp=fopen("

f.txt"

"

w"

))==NULL)

{

Erroronopenf.txt!

exit(0);

fprintf(fp,"

%s"

Programmingisfun!

if(fclose(fp))

Cannotclosed:

\f.txtandstrikeanykeyexit!

getch();

5.#include<

#defineISLOWER(c)(c>

=97&

=132?

1:

0)

charx;

%c"

x);

ifISLOWER(x)

x);

6.#include<

intyear=1986,r=76;

本世纪地球上见到哈雷彗星的年份是%d年!

year+r);

习题三

1.D2.C3.D4.A5.A6.A7.D8.B9.A10.D

11.C12.B13.B14.A

1.82.23.s=94.225.2

三、程序填空题

1.【1】m%n【2】n【3】w

2.【1】&

n【2】s=0【3】k【4】s+=i++【5】%ld

3.【1】i<

100【2】i%3==0&

i%10==6

1.#include"

floatn,s=0,t=1;

for(n=1;

n<

=20;

n++)

t*=n;

s+=t;

1+2!

+3!

...+20!

=%e\n"

s);

inti,j,k,n;

'

waterflower'

numberis:

"

for(n=100;

1000;

i=n/100;

/*分解出百位*/

j=n/10%10;

/*分解出十位*/

k=n%10;

/*分解出个位*/

if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)

%-5d"

n);

intn=1;

floate=1,k;

k=1/n;

while(k>

=1e-6)

n++;

e+=k;

k=k/n;

n=%d\te=%f\n"

n,e);

4.#include"

inti;

floatk,s,fz=2,fm=1,newfz;

s=fz/fm;

for(i=2;

i<

i++)

{

newfz=fz+fm;

fm=fz;

fz=newfz;

k=fz/fm;

s+=k;

s=%f"

5.#include"

intday,x1,x2;

//第1天的桃子数为x1,第2天的桃子数为x2

x2=1;

//第10天只剩下1个

day=9;

//只考虑前9天

while(day>

x1=(x2+1)*2;

/*根据题意:

第2天剩下的桃子数x2=x1/2-1,也就是说:

第一天的桃子数是第2天桃子数加1后的2倍*/

x2=x1;

day--;

thetotalis%d\n"

x1);

6.#include"

inti,j,s;

for(j=2;

j<

j++)

s=j;

for(i=1;

j;

if((j%i)==0)

s=s-i;

if(s==0)

%disawanshu\n"

j);

7.#include"

{inta,b,c,d,e,f,s1,s2,s3,s4,s5,s6;

//a,b,c,d,e,f各代表一个嫌疑人

for(a=0;

a<

=1;

a++)

for(b=0;

b<

b++)

for(c=0;

c++)

for(d=0;

d<

d++)

for(e=0;

e<

e++)

for(f=0;

f<

f++)

{s1=a||b;

//a,b至少一人作案

s2=!

a||!

d;

//a,d不可能是同案犯

s3=a&

e||a&

f||e&

f||a&

e&

f;

//a,e,f这3人中至少有两个人参与作案

s4=b&

c||!

b&

!

c;

//b,c或同时作案或本案无关

s5=c&

d||!

c&

//c,d中有且仅有一人作案

s6=d||!

e;

//如果d没有参与作案,则e也不可能参与作案

if(s1&

s2&

s3&

s4&

s5&

s6)

{if(a)

%c是作案人\n"

'

A'

if(b)

B'

if(c)

C'

if(d)

D'

if(e)

E'

if(f)

F'

}}

习题四

1.C2.D3.D4.B5.D6.B7.A8.C9.D10.C

11.B12.A13.D14.A

1.002.063.gets(s1);

4.strcpy(s2,s1);

5.\01

1.10000

01000

00100

00010

00001

2.AQM3.AzyD4.9198

5.574891

157489

915748

891574

489157

748915

四、程序填空题

1.【1】i==j【2】a[i][j]

2.【1】i-1【2】a[j+1]=a[j]【3】a[j+1]

3.【1】*(a+i)=*(a+j)【2】a+j

习题五

1.D2.B3.C4.D5.A6.C7.A8.D9.B10.C

11.C12.B13.C14.D15.C

1.整型2.值传递地址传递3.嵌套调用递归调用

4.全局变量局部变量动态变量静态变量5.voiddothat(intn,doublex);

voiddothat(int,double);

6.动态变量静态变量7.动态变量

8.静态变量9.分配存储空间赋值

1.8,17

2.024681012141618

024681012141618

3.-125=-5*5*5

4.

i=5

i=2

i=4

1.【1】x2=mid【2】x1=mid

2.【1】p++【2】a[i]=a[i+1]

3.【1】floatfun(floata,floatb)【2】x,y+fun(z,x+z)【3】z,y

4.【1】i<

10【2】array[i]【3】return(avgr)

五、程序判断题

1.voidadd(inta,intb)改为intadd(inta,intb)

2.if(d%2=0)改为if(d%2==0)

s\=10;

改为s/=10;

3.intk;

i=5;

改为intk,i=5;

num[i]=0;

改为num[k]=0;

switch(s)改为switch(s[k])

4.s[j]=s[i];

改为s[j++]=s[i];

 

s[j]=”\0”;

改为s[j]='

\0'

;

习题六

1.B2.A3.B4.A5.A6.D7.D8.A9.D10.D

1.WangWu:

20puter

1.【1】"

r"

【2】niu【3】fclose(ma)

2.【1】FILE*fp【2】ch!

='

\n'

【3】fclose(fp)

四、程序设计题

structdate

intyear;

intmonth;

intday;

}x;

%d%d%d"

x.year,&

x.month,&

x.day);

%d年%d月%d日"

x.year,x.month,x.day);

voidReadDat();

voidWriteDat();

WriteDat();

ReadDat();

voidReadDat()

charch;

fp=fopen("

upper.txt"

while(!

feof(fp))

{ch=fgetc(fp);

putchar(ch);

fclose(fp);

voidWriteDat()

ch=getchar();

while(ch!

if(ch>

a'

ch<

z'

ch=ch-32;

fputc(ch,fp);

3.#include<

#include<

string.h>

charxx[50][80];

intmaxline=0;

/*文章的总行数*/

intReadDat(void);

voidWriteDat(void);

voidStrCharJR(void);

{

if(ReadDat())

printf("

数据文件in.txt不能打开!

\n\007"

);

return;

StrCharJR();

WriteDat();

voidStrCharJR(void)

inti,j;

for(i=0;

maxline;

for(j=0;

xx[i][j]!

xx[i][j]+=xx[i][j]>

>

4;

intReadDat(void)

FILE*fp;

inti=0;

if((fp=fopen("

in.txt"

"

))==NULL)return1;

while(fgets(xx[i],80,fp)!

=NULL)

i++;

maxline=i;

fclose(fp);

return0;

voidWriteDat(void)

inti;

fp=fopen("

OUT.txt"

for(i=0;

i<

maxline;

i++)

%s\n"

xx[i]);

fprintf(fp,"

习题七

一、程序阅读题

1.20

2.单链表的结构图如下:

输出结果为:

58634

二、程序设计题

conio.h"

process.h"

voidPrintTable(structCollelm*x);

/*打印集合元素*/

voidAppendToTable(structCollelm*x);

/*为集合x输入元素*/

voidAddition(structCollelm*x,structCollelm*y);

/*求集合x,y的并集*/

voidInsertToTable(structCollelm*x,intnumber);

/*向集合x中插入元素number*/

voidMultiply(structCollelm*x,structCollelm*y);

/*求集合x,y的交集*/

structCollelm*CreateTable();

/*创建空链表*/

structCollelm/*定义结构体*/

intnumber;

structCollelm*next;

};

structCollelm*CreateTable()/*创建空链表*/

structCollelm*c;

c=(structCollelm*)malloc(sizeof(structCollelm));

c->

number=0;

next=NULL;

return(c);

/*返回链表头指针*/

voidAppendToTable(structCollelm*x)/*向集合中添加元素x*/

%d"

&

number);

while(number)

InsertToTable(x,number);

scanf("

voidInsertToTable(structCollelm*x,intnumber)/*向集合x中插入一个元素number*/

structCollelm*newc,*last;

/*newc新建节点指针*/

last=x;

/*last是链表的尾指针*/

while(last->

next!

=NULL)

last=last->

next;

newc=(structCollelm*)malloc(sizeof(structCollelm));

newc->

number=number;

last->

next=newc;

newc->

next=NULL;

voidAddition(structCollelm*x,structCollelm*y,structCollelm*collAdd)/*求两集合的并集*/

structCollelm*p,*q,*r;

p=x->

q=y->

r=collAdd;

if(!

p)/*若集合p为空*/

if(!

q)/*若集合q为空*/

return;

else/*若集合q不为空*/

while(q)

{

InsertToTable(r,q->

r=r->

q=q->

}

else/*若集合p不为空*/

q)/*若集合q为空*/

while(p)

InsertToTable(r,p->

p=p->

else/*若集合q不为空*/

{

while(q)

q=y->

while(q)

{

if(p->

number!

=q->

number)

q=q->

else

break;

}

if(!

q)

InsertToTable(r,p->

r=r->

}

}

PrintTable(collAdd);

voidMultiply(structCollelm*x,structCollelm*y,structCollelm*collMul)/*求两集合的交集*/

r=collMul;

p||!

q)/*p,q两个集合中有一个为空*/

return;

else

while(p)

if(p->

number==q->

p=p->

q=y->

PrintTable(collMul);

voidPrintTable(structCollelm*c)/*输出集合中元素的功能函数*/

structCollelm*t;

t=c;

t=t->

t)

puts("

ThetableisEMPTY!

while(t!

=NULL)

%3d\t"

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

当前位置:首页 > 工程科技 > 能源化工

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

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