C语言课程设计题目55297.doc
C语言课程设计题目要求从以下题目1-3中至少选1题,题目4-10中至少选2题。1假定文本文件a1.txt中是某高校所有参加住宅小区挑房职工的信息,请编写程序,读出文件中的内容,再按挑房的先后次序排队后将排序号和姓名以文本方式存放到文件a2.txt中。排队原则 先按职称排,同职称按分房工龄排,同工龄按年龄排。职称编号 校级干部 0 教授、正处级 1 副教授、副处级 2 讲师、科级 3 其他 42. 假定文本文件b1.txt中的内容是今年报考某学院研究生的数据,并已知录取名额为100 人,且要求录取的女生占30,请编写程序找出所有被录取的考生,把被录取的考生的相应数据按文本形式写入到文件b2.txt中。要求运行程序得到运行结果。3“火烧连营”是三国演义中的著名典故之一广为流传,假定文本文件c1.txt是火烧连营中的军营分布图,每个字符A代表一个营帐,营帐是可燃物,其他字符代表不可燃的空白地段,文件共有40行70列,请你编写程序,读入该文件的内容,再从键盘输入任意点的x和y值(x70,y40)作为着火点,“火烧连营”后,被燃烧的营帐标上字符X,并把整个结果输出到文件c2.txt中。4幸运方阵问题。 所谓“幸运方阵”问题是这样的,任意指定一个阶数,例如3;再任意选定一个“幸运数”,例如100,要求生成一个3阶方阵。从方阵中任意划去一行与一列,记下交叉点的数值;再从方阵剩余部分任意划去一行一列,再记下交叉点数值;继续这一过程,当方阵已不剩任何元素时,所有记下的元素值之和恰好为100。如下面的方阵即为所需结果 51 43 63 17 9 29 28 20 40 注意实际上给定一个阶数n与一个幸运数lucky,可以有无数多个解。如果不希望多出现负数,lucky相对于n不应过小。5年历显示。 输入一个年份,输出是在屏幕上显示该年的日历。假定输入的年份在1900年之后。 如下图6计算24游戏。 要求输入四个数通过加减乘除计算出24,显示计算过程,并提示成功信息。7 根据以下问题描述编写程序,实现求在环上哪个位置剪开,按下述规则可取走的珠子粒数最多,程序可用数组存储字符串。设一个环上有编号为 0n-1 的 n 粒不同颜色的珠子 每粒珠子颜色用字母表示,n 粒珠子的颜色由输入的字符串表示。将环中某两粒珠子间剪开,环上珠子形成一个序列,然后按以下规则从序列中取走珠子首先从序列左端取走所有连续同包珠子;然后从序列右端在剩下珠子中取走所有连续同色珠子,两者之和为该剪开处可取走珠子的粒数。在不同位置剪开,能取走的珠子数不尽相同。例如,10 粒珠子颜色对应字符串为“aaabbbadcc”,从 0 号珠子前剪开,序列为 aaabbbadcc,从左端取走 3 粒 a 色珠子,从右端取走 2 粒 c 色珠子,共取走 5 珠子。若在 3 号珠子前剪开,即 bbbadccaaa 共可取走 6 粒珠子。8在歌唱大奖赛的半决胜赛现场,有一批选手参加比赛,比赛的规则是最后得分越高,名次越低。当半决决赛结束时,要在现场按照选手的出场顺序宣布最后得分和最后名次,获得相同分数的选手具有相同的名次,名次连续编号,不用考虑同名次的选手人数。例如 选手序号 1,2,3,4,5,6,7 选手得分 5,3,4,7,3,5,6 则输出名次为 3,1,2,5,1,3,4 请编程帮助大奖赛组委会完成半决赛的评分和排名工作。9. “常胜将军”现有21根火柴,两人轮流取,每人每次可以取走1至4根,不可多取,也不能不取,谁取最后一楰火柴谁输。请编写一个程序进行人机对弈,要求人先取,计算机后取;计算机一方为“常胜将军”。10. 黑白子交换 有三个白子和三个黑子如下图布置 . 游戏的目的是用最少的步数将上图中白子和黑子的位置进行交换 . 游戏的规则是1一次只能移动一个棋子; 2棋子可以向空格中移动,也可以跳过一个对方的棋子进入空格,但不能向后跳,也不能跳过两个子。请用计算机实现上述游戏。