C语言入门必做习题100例(四).doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 入门 习题 100
- 资源描述:
-
1. (N阶梵塔) 有K根棒,第一根上放N片大小不等的圆盘,并保持上小下大的 顺序。现将N片圆盘从第1根移至第K根,移动中均保持上小下大的顺序,问最少 移几次方得结果,求出移动方案。 2. 某一印刷厂有六项加工任务,对印刷车间和装订车间所需时间见下表(时间单 位:天) 任务 │J1 J2 J3 J4 J5 J6 ─────┼─────────────── 印刷车间│ 3 12 5 2 9 11 装订车间│ 8 10 9 6 3 1 如何安排加工顺序,使加工时间最少。 3. 将7万元投资到A,B,C三项目上,其利润见下表: 投资额(万元)│ 1 2 3 4 5 6 7 ──────┼──────────────────── 项 A │0.11 0.13 0.15 0.24 0.24 0.30 0.35 B │0.12 0.16 0.21 0.25 0.25 0.29 0.34 目 C │0.08 0.12 0.20 0.26 0.26 0.30 0.35 如何分配投资额,使获得的利润最大。 4. 无根树与通常所说的树(有根树)很相似,它包含有节点和枝,但不含有根。 无根树节点之间只有相邻关系。如图一所示,是一棵有七个节点的无根树,以图一 的A为根节点得到图二所示的有根树,以B为根节点得到图三所示的有根树,但从 无根树的角度看,图一、二、三是结构相同的无根树,同时无根树的结构与节点的 名称无关。 有根树可以用字符串的形式表示,其递归表示方法是: 根节点(子树1 子树2 子树3...) 图一,图二的有根树可表示为 A(B(CF(EGD))) 和 B(ACF(EGD))。由于子树的表示 顺序可以不同,所以一棵有根树可以有多种表示方法,如图三又可表示成 B(F(EGD)CA) 或 B(ACF(DE(G)) 等。表示无根树时,可以以它任一节点为根节点, 将其看作有根树,从而可以利用有根树的字符串表示形式来表示无根树。 任务一:由键盘读入一个字符串表示的无根树,无根树的各节点的名称用互不 相同的大写英文字母表示。由用户输入一个节点的名称,程序应能够输出一种以该 节点为根节点的字符串形式。程序输出无根树的字符串形式时,各个节点的名称无 关紧要,所有节点都以P表示,以后的各种输出也采用这种形式。例如:输入无根 树的字符串形式:A(B(CD(EF))),指定根节点为D,程序应能输出 P(P(PP)PP),P(PP(PP)P),P(PPP(PP))中的任意 一种即可。 任务二:输入两个串表示的无根树,判断其结构是否一样。注意它与节点名称 无关,只考虑结构。 任务三:输入无根树的总枝数N(1<=N<=11),输出所有枝数为N的互不相同 的无根树,并记录总数。以字符串形式输出,例如:N=5 时共有6种不同结构的无 根树。 注意:各种树结构的字符串表达形式不唯一。 5. 用N*N(1<=N<=8)的格点阵代表海,其中*号代表岛。给你一组编 码信息,让你重构一张地图。这组信息是按垂直方向,水平方向岛的情况摘取的。 下例中,每行右边的数字按顺序表示该行中“岛组”的大小,如第一行数字为 “12”,表示该行第一“岛组”由一个岛组成,第二“岛组”由两个岛组成,而 第四列下面的“23”则表示本列由两个“岛组”组成,第一个“岛组”由两个岛 组成,第二个“岛组”由三个岛组成。 任务:编程执行以下步骤,直到给定的输入 (ASCII) 文件中的信息组全部读完 为止,步骤如下: (1)从输入文件 (ASCII 文件)中读入下一个信息块,并将它显示在屏幕上。 每个信息块组成为: 格点阵大小 (N),以后是行的约束条件(N行的),列的约束条件(N列的), 每行(或每列)的约束条件是 一行数字,数字间有空格,最后用0结束。上面的例子如图所示。 (2)重构这张地图(若有多个解,要逐个构成地图),并显示。 (3)将重构的地图以ASCII文件形式输出。每岛以*后加一个空格表示; 空白处用连续的两个空格表示。若同一已知条件可画出多张地图,相互间用空行隔 开;若一组已知条件画不出地图,用“NO MAP(占一行)表示。由不同的信 息组求得的解用“NEXT PROBLEM”(占一行表示)1<=N<=8. 6. 一个餐厅在相继的N天里,第 i 天需要 Ri 块餐巾(i=1,2,...,N)。餐厅 可以从三种途径得到餐巾: (1) 购买新的餐巾,每块需P分; (2) 把用过的餐巾送到快洗部,洗一块需M天,费用需F分(F<P); (3) 把餐巾送到慢洗部,洗一块需N天(N>M),费用需S分(S<F)。 在每天结束时,餐厅必须决定将多少块用过的餐巾送到快洗部,多少块送慢洗部, 多少块保存起来延期送洗。在每天开始时,餐厅必须决定是否购买新餐巾及购买多 少,使洗好的和新购的餐巾之和满足当天的需求量Ri,并使N天总的费用最小。请 编程输入总天数,每天所需的餐巾块数以及每块餐巾的新购费用P,快,慢洗费用 F,S,和所需天数M,N,输出每天开始时需购新餐巾数,结束时送快,慢洗部 和延期送洗的餐巾数。 7. ( 旅行商 ) 一个推销员计划做一次旅行,他必须访问如图所示每个城市。每 两个城市的路径旁标有路径。要求从城市A出发,访问每个城市一次,且只访问一 次,最后返回城市A,求一条距离最短的路线。 8. (tic__tac__toe 游戏) tic__tac__toe 游戏的规则是:从一个空的 (N*N) 的 棋盘(例如N=3)开始,甲乙二人轮流将棋子放置在棋盘上未被占据的方格中, 例如甲第一个放,他把棋子放在中央的方格里, 然后轮到乙放,他把棋子放在第 一行中间的方格里。于是又轮到甲放,......如此进行下去。判定胜负的方法是: 若某一游戏者有N枚棋子占据了一横行,或一竖列,或一对角线,则此人获胜;若 直至整个棋盘被占满还没有一方获胜,则为平局。 ┏━┯━┯━┓ ┏━┯━┯━┓ ┏━┯━┯━┓ ┃ │ │ ┃ ┃ │ │ ┃ ┃ │O│ ┃ ┠─┼─┼─┨ ┠─┼─┼─┨ ┠─┼─┼─┨ ┃ │ │ ┃ ┃ │X│ ┃ ┃ │X│ ┃ ┠─┼─┼─┨ ┠─┼─┼─┨ ┠─┼─┼─┨ ┃ │ │ ┃ ┃ │ │ ┃ ┃ │ │ ┃ ┗━┷━┷━┛ ┗━┷━┷━┛ ┗━┷━┷━┛ 9. 以字符串形式由键盘输入两个高精度的8进制正整数,串长小于255,以 第一个数为被除数,第二个数为除数,进行高精度除法运算,并显示按 8 进制表 示的商和余数。 10. ( NOI'94.1_1 ) 键盘输入一个仅由小写字母组成的字符串,输出以该串中任 取M个字母的所有排列及排列总数。 11. ( NOI'94.1_2 ) 编程实现两个高精度实数减法,两数分别由键盘输入,均不 超过240位。 12. ( NOI'94.1_3 ) 一个实数数列共有N项,已知a(i)=(a(i-1)-a(i+1))/2+d, (1〈i〈N)(N<60) , 键盘输入N,d,a(1),a(n),m,输出 a(m)。 13. ( NOI'94.1_4 ) 键盘输入一个高精度的正整数N,去掉其中任意S个数字后 剩下的数字按原左右次序将组成一个新的正整数。编程对给定的N和S,寻找一种 方案使得剩下的数字组成的新数最小。输出应包括所去掉的数字的位置和组成的新 的正整数。(N不超过240位) 14. 在两个文本文件中各存有一个以西文制表符制成的未填入任何表项的表结构, 分别称之为表1和表2,要求编程将表1和表2下述规则合并成表3: 规则:表1在表2之上,表1和表2的左边框对齐,将表1的最低行与表2的 最顶行合并。例:在你的C盘根目录下有两个文件 t0.1 和 t0.2,分别存放上述 的表1和表2,经上述规则合并后得到表3,放在文件中。三张表见下图: ┎─┰─┰─┰─┒ ┎─┰─┰─┰─┒ ┃ ┃ ┃ ┃ ┃ ┎┰─┰─┒ ┃ ┃ ┃ ┃ ┃ ┠─╂─╂─╂─┨ ┃┃ ┃ ┃ ┠─╂─╂─╂─┨ ┃ ┃ ┃ ┃ ┃ ┖┸─┸─┚ ┃ ┃ ┃ ┃ ┃ ┖─┸─┸─┸─┚ ┠┰┸┰┸┰┸─┚ ┃┃ ┃ ┃ ┖┸─┸─┚ 表1 表2 表3 编程要求: (1) 程序应能自给定的文件中读入两个源表并显示。 (2) 若源表有错,应能指出其错。 (3) 将表1和表2规则合并成表3,并显示之。 (4) 所有制表符的ASCII码应由选手自己从给出的示例文件中截取。 15. (圆盘问题) 从左向右依次安放 4 根细柱 A,B,C,D. 在 A 上套有 N (N≤20) 个直径相同的圆盘, 从下到上依次用连续的小写字母 a,b,c,...编号, 将这些圆盘 经过 B, C 单向地移入 D (即不允许从右向左移动). 圆盘可在 B,C 中暂存. 从键 盘输入 N, 及前 N 个小写字母的一个排列, 它表示最后在 D 盘上形成的一个从下 到上的圆盘序列. 请用文本文件 ANS2.TXT 输出形成这一排列的操作过程. 该文件的每一行为一个形如 "k M L" 的字母序列, 其中 k 为圆盘编号, M 为 k 盘原先的柱号, L 为新柱号. 或者直接在屏幕上输出"No",表示不能生成这种排列. 例: ┃ ┃ ┃ ┃ 键盘输入: ┃ ┃ ┃ ┃ 3 d ━╋━ ┃ ┃ ┃ acb c ━╋━ ┃ ┃ ┃ 则一个正确的输出文件 b ━╋━ ┃ ┃ ┃ 可以是: a ━╋━ ┃ ┃ ┃ c A B ━━┻━━━┻━━━┻━━━┻━ b A C A B C D a A D b C D c B D展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




C语言入门必做习题100例(四).doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/7980048.html