程序设计基础习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7.8习题
1.编制一个 C 程序,从键盘输入一个正整数,如果该数为素数,则输出该素数,否则输出该数的所有因子(除去1 与自身)。
2.编制一个 C 程序,从键盘输入一个正整数N,然后计算并输出
1 2 |N |
S=1 2 2 2
最后计算并输出
T= 1 1
2
1
3
K
( 1)
1
1
K
其中K S 的整数部分。
3.编制一个 C 程序,计算并输出多项式的值
5. ( 0.5 1)05.( 0.5 1)( 05.2)
2 3 S 1 05.x x x n
2!3! 5. ( 0.5 1) ( 0.5 n 1)
n!
x n
的值,直到|S n-S n-1|<0.000001 为止。其中x 从键盘输入。
4. 编制一个 C 程序,计算下列级数和:
s n=1+(2/1)+(3/2)+(5/3)+(8/5)+(13/8)+ , +(a n/a n-1)
其中n≥1,由键盘输入;
s1=1。
5.编制一个 C 程序,计算并输出下列级数之和:
x
e 1 x
2 3 n x x x 2! 3! n!
其中n 与x 从键盘输入。
6.编制一个 C 程序,输出能写成两个数平方之和的所有三位数。
7.如果一个数恰好等于它的所有因子(包括1 但不包括自身)之和,则称之为“完数”。例如,6 的因子为1、2、3,且1+2+3=6 ,即 6 是一个“完数”。编制一个 C 程序,计算并输
出1000 以内的所有“完数”之和。
8.编制一个 C 程序,从键盘输入30 个实数,分别计算并输出以下 5 个量:所有正数之和,所有负数之和,所有数的绝对值之和,正数的个数,负数的个数。
9. 100 元钱买100 只鸡,母鸡 3 元/只,公鸡 2 元/只,小鸡0.5 元/只。编制一个 C 程序,制
定买鸡方案
。
10.设A,B,C,D,E 五人,每人额头上贴了一张或黑或白的纸。五人对坐,每人都可以
看到其他人额头上的纸的颜
色
,但都不知道自己额头上的纸的颜色
。五人相互观察后开始说
话:
A 说:我看见有三人额头上贴的是白纸,一人额头上贴的是黑纸。
B 说:我看见其他四人额头上贴的都是黑纸。
C 说:我看见有一人额头上贴的是白纸,其他三人额头上贴的是黑纸。
D 说:我看见四人额头上贴的都是白纸。
E 什么也没说。
现在已知额头上贴黑纸的人说的都是真话,额头上贴白纸的人说的都是假
话。编制一个 C 程序,确定这五人中谁的额头上贴白纸,谁的额头上贴黑纸?
7.9寻找1000 以内最小的10 个素数与最大的10 个素数(去掉重复的素数),计算并输出这20 个素数之和。
具体要求:
(1) 画出计算过程的结构化流程图。
(2) 虽然1000 以内素数个数超过20 个,但仍要求考虑1000 以内不够10 个最小素数与10 个最大素数,以及最小的10 个素数与最大的10 个素数有重复的情况。
(3) 输出要有文字说明。输出形式为
zuixiaosushu:素数1,素数2,, ,素数10
zui da sushu:素数1,素数2,, 素数10
sushuzhi he:和的具体值
(4) 在程序内部加必要的注释(至少有三处)。
方法说明:
对于某个(从小到大与从大到小)自然数k,开始时置标志flag 为0,然后对 2 到k 中的
自然数j 进行检测,当发现j 是k 的因子,就置flag 为1,表示不必再对别的自然数进行检测,因为此时已经可以确定k 不是素数了,只有当 2 到k 中的所有自然数都不是k 的因子
(即flag 保持为0)时,说明k 为素数,输出k,并进行累加。
7.10 A 、B、C、D、E 五人分苹果。 A 将所有的苹果分为五份,将多余的一个苹果吃掉后再拿走自己的一份苹果; B 将剩下的苹果分为五份,将多余的一个苹果吃掉后再拿走自己的一
份苹果;C、D、E 依次按同样的方法,将剩下的苹果分为五份,吃掉多余的一个苹果后拿
走自己的一份苹果。编程计算原来至少有多少个苹果?A、B、C、D、E 各得到多少个苹果?具体要求:
(1) 画出计算过程的结构化流程图。
(2) 输出要有文字说明。
(3) 在程序内部加必要的注释(至少有三处)。
方法说明:
采用逐步试探的方法。
设当前试探的苹果数为n。如果n 满足下列条件:
n-1(多余的一个被吃掉)后要能被 5 整除;
拿走一份后,余下的四份苹果数为4*(n-1)/5 。
按上述策略连续进行五次分配,如果每次分配时均满足其中的条件,则试探的n 即为原来的苹果数x。
为了第一次能分配,试探从 6 开始。
根据分配策略,最后 A ,B,C,D,E 五人得到的苹果数(不包括吃掉的一个苹果)可以按
如下公式依次计算:
a=(x-1)/5
b=(4*a-1)/5
c=(4*b-1)/5
d=(4*c-1)/5
e=(4*d-1)/5
7.11某单位要在A,B,C,D,E,F 六人中选派若干人去执行一项任务,选人的条件如下:
(1) 若C 不去,则 B 也不去;
(2) C 和D 两人中去一个;