高教c语言程序设计版课后编程题答案Word格式文档下载.docx

上传人:b****6 文档编号:17621988 上传时间:2022-12-07 格式:DOCX 页数:44 大小:26.55KB
下载 相关 举报
高教c语言程序设计版课后编程题答案Word格式文档下载.docx_第1页
第1页 / 共44页
高教c语言程序设计版课后编程题答案Word格式文档下载.docx_第2页
第2页 / 共44页
高教c语言程序设计版课后编程题答案Word格式文档下载.docx_第3页
第3页 / 共44页
高教c语言程序设计版课后编程题答案Word格式文档下载.docx_第4页
第4页 / 共44页
高教c语言程序设计版课后编程题答案Word格式文档下载.docx_第5页
第5页 / 共44页
点击查看更多>>
下载资源
资源描述

高教c语言程序设计版课后编程题答案Word格式文档下载.docx

《高教c语言程序设计版课后编程题答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《高教c语言程序设计版课后编程题答案Word格式文档下载.docx(44页珍藏版)》请在冰豆网上搜索。

高教c语言程序设计版课后编程题答案Word格式文档下载.docx

average=average/10;

average=%lf"

average);

}

3.33 

编写程序,读入三个整数给a,b,c,然后交换它们中的数,把a中原来的值给b,

把b中原来的值给c,把c中的值给a。

a,b,c,t=0;

c:

%d%d%d"

t=c;

c=b;

b=a;

a=t;

a=%d 

b=%d 

c=%d"

a,b,c);

第四章选择结构

4.21 

当a>

0时,请将以下语句改写成switch语句。

if( 

a<

30 

) 

m=1;

else 

40 

m=2;

50 

m=3;

60 

m=4;

m=5;

main()

{

a;

Enter 

a:

%d"

a);

switch(a/10)

case 

0:

1:

2:

m=1"

break 

;

3:

m=2"

4:

m=3"

5:

m=4"

default:

m=5"

4.22 

编写程序,输入一位学生的生日(年:

y0、月:

m0、日:

d0);

并输入当前的日

期(年:

y1、月:

m1、日:

d1);

输出该生的实足年龄。

※程序如下※ 

这道题仅做参考!

系统不一样无法运行!

y0,y1,m0,m1,d0,d1,age=0;

Your 

Birthday(yyyy-mm-dd):

%d-%d-%d"

y0,&

m0,&

d0);

Current 

Date(yyyy-mm-dd):

y1,&

m1,&

d1);

if(d1<

d0)m1=m1-1;

if(m1<

m0)y1=y1-1;

age=y1-y0;

\nAge=%d"

age);

4.23 

编写程序,输入一个整数,打印出它是奇数还是偶数。

i;

integer:

i);

if(i%2==0) 

/*条件判断*/ 

%d 

is 

even"

i);

odd"

——————————————————————————————————

4.24 

编写程序,输入a、b、c三个数,打印出最大者。

a,b,c,max 

0;

(int)a 

max 

if(max<

b) 

b;

c) 

c;

max=%d"

max);

4.25 

有一函数:

编写一程序,要求输入x的值,输出y的值。

分别

(1)不嵌套的if语句 

(2)嵌套的if语句

(3)if_else语句 

(4)switch语句

源程序一:

(1)不嵌套的if语句

float 

x;

x:

%f"

x);

if(x>

-5&

&

x<

0) 

y=%f"

x);

if(x==0) 

x-1);

0&

10) 

x+1);

if(x<

=-5||x>

=10)

error"

源程序二:

源程序三:

(3)if_else语句

源程序四:

flag;

-5 

flag=-1;

flag=0;

flag=1;

switch(flag)

-1:

break;

}/*

第五章循环结构

三、编程题

5.17 

编写程序,求1-3+5-7+...-99+101的值。

i,sum=0,s=1;

for(i=1;

i<

=101;

i+=2) 

sum=sum+i*s;

s=-s;

/*控制符号交替变换*/

sum=%d"

sum);

5.18 

编写程序,求e的值,e=1+1/1!

+1/2!

+1/3!

+1/4!

+...+1/n!

(1)用for循环,计算前50项

(2)用while循环,要求直至最后一项的值小于1e-4。

(1)用for循环实现

i,n;

sum=1,t=1;

n:

n);

=n;

i++) 

t=t*i;

实现阶乘*/

sum=sum+1/t;

e=%lf"

(2)用while循环实现

#include<

math.h>

doubel 

while(fabs(1.0/t)>

1e-4) 

fabs求浮点型数据的绝对值 

i++;

5.19 

编写程序,输出从公元1000年至2000年所有闰年的年号 

每输出3个年号换一行。

判断公元年是否闰年的条件是:

(1)公元年数如能被4整除,而不能被100整除,则是闰年。

(2)公元年数能被400整除也是闰年。

i,j=0;

for(i=1000;

=2000;

if((i%4==0)&

(i%100!

=0)||(i%400==0)) 

判断是否是闰年的条件 

"

j++;

if(j%3==0) 

控制换行 

*/ 

5.20 

编写程序,打印以下图形:

*

***

*****

*******

i,j;

=7;

/*控制行数*/ 

for(j=1;

j<

j++) 

/*控制星数*/ 

if((j<

=fabs(4-i))||(j>

7-fabs(4-i))) 

*"

main()

{inti,j,k;

for(i=-3;

=abs(i);

i++)

{for(j=0;

j++)printf(“”);

for(k=0;

k<

=7-abs(i);

k++)printf(“*”);

printf(“\n”);

第六章字符型数据

6.21 

请编写程序,输入一行字符(用回车结束),输出每个字符以及与之对应的ASCII代码值,每行输出三队.

i=0;

char 

ch;

while((ch=getchar( 

))!

='

\n'

%4c%4d"

ch,ch);

if(i%3==0) 

请编写程序,输入一行数字字符(用EOF结束),每个数字字符的前后都有空格。

请编程,把这一行中的数字转换成一个整数。

例如,若输入:

<

CR>

(<

代表Enter键)

则输出整数:

2483

while((ch=getchar())!

=EOF)

if(ch=='

'

continue;

%c"

ch);

6.22 

请编写程序统计输入的行数,输入用EOF结束输入。

6.23 

请编写程序统计输入的一行中小写字母的个数。

if((ch>

a'

)&

(ch<

z'

))

6.24 

请编写输出以下图案的程序,图案的行数由输入的值确定。

A

BBB

CCCCC

DDDDDDD

EEEEEEEEE

i,j,k,n;

n(integer):

i++)

for(j=n;

j>

j--)

for(k=1;

=2*i-1;

k++)

64+i);

第七章函数

7.14 

以下fun函数用以判断n是否是素数,fun函数中有逻辑错,请调试改正。

fun(int 

n)

k,yes;

for(k=2;

=n/2;

if(n%k==0) 

return 

yes=0;

yes=1;

※正确答案是:

k,yes=1;

yes;

n,yes;

(int):

yes=fun(n);

if(yes==1)printf("

prime"

n);

not 

7.15 

编写函数 

mymod(int 

a, 

b)用以求a被b除之后的余数。

mymod( 

remainder;

remainder=a%b;

a,b;

b);

余数=%d"

mymod(a,b));

7.16 

编写程序求:

1-1/2+1/3-1/4+1/5-1/6+1/7-...1/n

n;

sum(int 

a=sum(n);

%10.5f"

a);

s=0;

i,t=1;

s=s+1/i*t;

t=-t;

s;

7.17 

编写函数,根据整型形参m的值,计算如下公式的值。

t=1-1/(2 

2)-1/(3 

3)-...-1/(m 

m)

例如:

若m=5,则应输出0.536389。

t=1;

f2(int);

i,m;

m);

for(i=2;

=m;

t=t-f2(i);

t=%f"

t);

f2(int 

s=1.0/(m*m);

7.18 

编写函数用以求表达式x2-5x+4,x作为参数传给函数,调用此函数求:

y1=22-5*2+4

y2=(x+15)2-5*(x+15)+4

y3=sin2x-5*sinx+4

fun(float 

x)

y;

y=pow(x,2)-5*x+4;

x,y1,y2,y3;

clrscr();

y1=fun

(2);

y2=fun((x+15));

y3=fun(sin(x));

y1=%f\ny2=%f\ny3=%f\n"

y1,y2,y3);

第八章地址和指针

8.17 

请编写函数,其功能是对传送过来的两个浮点数求出和值与差值,并通过形参传

送回调用函数。

sum_sub(float 

a,float 

b,float 

*sum, 

*sub)

*sum=a+b;

*sub=a-b;

a,b,sum,sub;

/*定义变量sum求和,变量sub求差*/

(float):

%f%f"

sum_sub(a,b,&

sum,&

sub);

sum=%f,sub=%f"

sum,sub);

8.18 

请编写函数,对传送过来的三个数选出最大和最小数,并通过形参传回调用函数。

max_min(double 

a,double 

b,double 

c,double 

*max,double 

*min)

*max 

假定a的值为最大,把a值赋给指针变量*max 

if(*max<

*min 

假定a的值为最小,把a值赋给指针变量*min 

if(*min>

a,b,c,max,min;

(double):

max_min(a,b,c,&

max,&

min);

max=%lf,min=%lf"

max,min);

第九章函数

9.27 

输入一行数字字符,请用数组元素作为计数器来统计每个数字字符的个数.用下标为

0元素统计字符"

1"

的个数,下标为1的元素统计字符"

2"

的个数,...

void 

count(int 

a[])

for(i=0;

10;

if(i==ch-'

0'

if(i==0)

a[9]++;

else

a[i-1]++;

i,a[10]={0};

count(a);

a[%d]=%d\n"

i,a);

9.28 

编写函数,对具有10个整数的数组进行如下操作:

从第n个元素开始直到最后一个元

素,依次向前移动一个位置.输出移动后的结果. 

fun 

(int 

a[],int 

for(i=n;

9;

a=a[i+1];

a[10]={0,1,2,3,4,5,6,7,8,9},n,i;

fun(a,n);

9.29 

编写函数把数组中所有奇数放在另一个数组中返回.

conio.h>

b[])

if(a%2==1)

b[j++]=a;

return(j);

i,j,a[10],b[10];

\n****Enter 

10 

integer 

number:

****\n"

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

当前位置:首页 > 高中教育 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1