C语言学习与应用课后习题答案 学习任务四参考答案 北邮_第1页
C语言学习与应用课后习题答案 学习任务四参考答案 北邮_第2页
C语言学习与应用课后习题答案 学习任务四参考答案 北邮_第3页
C语言学习与应用课后习题答案 学习任务四参考答案 北邮_第4页
C语言学习与应用课后习题答案 学习任务四参考答案 北邮_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学习任务见参考答案

问题47:使用当型循环结构编写程序计算10!的值,即1〜10的自

然数之积。

(1)绘制程序框图:

(2)编写程序代码:

#incIude"stdio.h"

voidmain()

(

inti,s;

i=1;

s=1;

while(i<=10)

(

s*=i;

i++;

}

printf("10!=%d",s);

getchar();

}

问题4-2使用直到型循环结构编写程序,计算1—100的所有偶数之

和。

(1)绘制程序框图:说明整变量:技

0

封+2;

(2)编写程序代码:jv=100吗?~|

输出SI

#incIude"stdio.h"

voidmain()

(

inti,s;

i=0;

s=0;

do

(

s+=i;

i=i+2;

}while(i<=100);

printfC'Cl00所有偶数和二%d",s);

getchar();

问题4-3使用for循环结构编写程序,计算1—100的所有奇数之和。

(1)绘制程序框图:

(2)编写程序代码:

#incIude"stdio.h"

voidmain0

(

inti,s;

s=0;

for(i=1;i<=100;i=i+2)

s+=i;

)

printf("Tl00所有奇数和%d",s);

getchar();

问题4-4使用循环嵌套编写程序使其输出如下图形。

*

**

***

****

#incIude"stdio.h"

voidmain0

(

inti,j;

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

(

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

(

printf("*");

}

printf("\n");

}

getchar();

)

问题4-5补充程序,实现输出1〜50中能被7整除的数的功能,并

画出流程框图。

#incIude"stdio.h"

voidmain()

{inti;

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

{if(i%7!=0)

continue;

printf("%d\n";i);

}

}

绘制程序框图:

编程训练4-1T计算1〜n的自然数之和。

#incIude"stdio.h"

voidmain()

(

inti,s=0,n;

printf("请输入一个正整数:");

scanf("%d",&n);

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

s+=i;

printf("s=%d",s);

次输入数据期望输出实际输出值

数值

151515

2105555

310050505050

编程训练4-1-2计算1-n的倒数之和。

#include"stdio.h"

voidmain()

(

inti,n;

doubIes=0;

printf("请输入一个正整数:”);

scanf("%d",&n);

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

s+=1.0/i;

printf("s=%f",s);

}

次数输入数期望输出实际输出值

据值

121.51.500000

231.831.833333

352.282.283333

编程训练4-1-3计算1-n内的奇数的倒数和。

#incIude"stdio.h"

voidmain()

(

inti,n;

doubIes=0;

printf("请输入一个正整数:");

scanf("%d",&n);

for(i=1;i<=n;i=i+2)

s+=1.0/i;

printf("s=%f",s);

}

次数输入数期望输出实际输出值

据值

121.001.00000

0

231.331.33333

3

351.531.53333

3

4101.791.78730

2

编程训练4-1-4正负相间问题,计算:17/3+1/5T/7+1/9-…1/n

#incIude"stdio.h"

voidmain()

(

inti,n,f=1;

doubIes=0;

printf("请输入一个正整数:");

scanf("%d",&n);

for(i=1;i<=n;i=i+2)

(

s=s+f*1.0/i;

)

printf("s=%f,4*s=%f",s,4*s);

)

次输入数1/n的s输出值4*s输出

数据值值(TT)

11003.121595

2100003.141393

35000003.141589

410000003.141591

编程训练4-1-5

#incIude"stdio.h"

voidmain()

(

inti,f=1;

doubIes=0,e;

printf("请输入计算精度:");

scanf("%lf",&e);

for(i=1;1.0/i>=e;i=i+2)

(

s=s+f*1.0/i;

f=-1*f;

}

printf("4*s=%f",4*s);

次输入数据输出值

数e4*s(n)

10.013.121595

20.00013.141393

30.0000023.141589

40.0000013.141591

编程训练4-1-6

错误原因是:每次循环开始没有给s赋初值,导致s的值不断累加。

应改为:在whiIe循环开始的时候加上s=0

任务二输出九九表

(2)方形的九九表代码

#incIude"stdio.h"

voidmain()

(

inti,j;

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

(

for(j=1;j<=9;j++)

t

printf("%d*%d=%2d",j,i,i*j);

I

printf("\n");

}

}

(3)输出下三角型的九九表

#include"stdio.h"

voidmain()

(

inti,j;

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

(

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

(

printf("%d*%d=%2d",j,i,i*j);

}

printf("\n");

)

}

(4)为输出增加修饰

#incIude"stdio.h"

voidmain()

inti,j;

printf("****九九表****\n");

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

{

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

(

printf("%d*%d=%2d",j,i,i*j);

)

printf("\n");

)

printf("**************\ri");

getchar();

}

(5)调试

之前执行程序的窗口没有关闭,导致exe文件无法更新。

把321.exe执行窗口关闭。

任务测试模拟试卷参考答案

一、选择题

1.AACCB6.BBCAC11,ADCDA16,BBDDA

二、填空题

1.54321

2.##2##4

3.k<-nk++

4.18

5.i<=9j%3!=0

6.1

7.break

8.s<3000

三'改错题

i++改为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论