2016C语言习题全集及答案:附加题04.docVIP

  • 28
  • 0
  • 约3.86千字
  • 约 4页
  • 2017-07-05 发布于江西
  • 举报
2016C语言习题全集及答案:附加题04

附加题 编写“N个人放鞭炮问题的程序”。 N个人同时刻开始放鞭炮, 第一个人每隔T1秒放一次,第二个人每隔T2秒放一次,...第N个人每隔Tn秒放一次。每个人各放M个鞭炮。问总共能听到多少次鞭炮声。 大数相加。 写一个程序,实现对任意长的两个大整数(例如100位)进行相加。每个数可用以下形式存放,例如整数179534679198可放于数组N中,其中: N[1]=198, N[2]=679, N[3]=534, N[4]=179 把两个数组中的元素一一相加,并根据需要进行进位。 要求: 1) 输出一个大数时中间不允许有空格, 如上述N数组输出时不允许输出: 179 534 679 198 而应输出 179534679198 2) 输出的数据中间的零不能用空格代替。 假设N[1]=23, N[2]=5, N[3]=534, N[4]=179时应输出 179534005023 而不应输出 179534 5 23 思考: 一个数组元素存放一位数时应如何修改程序? 打印年历。 要求:每行打印两个月日历。如下图: 一月 二月 三月 四月 . . . . . . 十一月 十二月 思考: 每行打印三个月日历。 猎人过河。 猎人要把一只狼,一头羊和一些白菜从河的左岸带到右岸,但他的船太小,一次只能带一样,因为狼要吃羊,羊会吃白菜,所以狼和羊,羊和白菜不能在无人监视的情况下相处,问猎人怎样才能达到目的? 请编程序实现猎人过河。 巧填运算符。 在下式的方块中填上加号或减号,使等式成立,共有多少种填法? 把每种填法的式子打印出来。 1 2 3 4 5 6 7 8 9 = 9 SHELL排序程序。 该方法的特征是:一个元素与它间隔为J 的元素进行比较或交换,然后逐步缩小这个间隔到1为止。J缩小的规律可以是 J=J/2或J=(J+1)/2,我们取 J=J/2(取整)编程。具体地说方法如下:对于N个数据,首先让J=INT(N/2),让X[1]与X[J+1]比较(假设数组名X),X[2]与X(J+2)比较,...,X[N-J]与X[N]比较,若次序颠倒,则互相交换。然后再重新比较一轮,直到没有交换为止。于是令J=INT(J/2),再重复以上操作,直到J=1,而且在这一轮比较中没有交换,才排序完成。 例如 N=9 数据为: 5 7 6 4 9 1 3 2 8 交换次数 J取4(INT(9/2)) 5 1 3 2 8 7 6 4 9 4 再比较一轮 不变 0 J取2(INT(4/2)) 3 1 5 2 6 4 8 7 9 3 再比较一轮 不变 0 J取1(INT(2/2)) 1 3 2 5 4 6 7 8 9 4 再比较一轮 1 2 3 4 5 6 7 8 9 2 再比较一轮 不变 停止 试编写一个程序寻找一条通过迷宫的路径。 一个迷宫可以看成是一个矩阵(数组),它有一个入口单元和一个出口单元,图中阴影处表示障碍物,白格表示可以通行的道路。只能从入口进去,从出口出去,中间只能通过白格子(即只能从一个白格单元走到一个相邻的白格单元,相邻指上、下、左、右四个单元),遇见死路时,退回去重找其它路。用户可设入口处(1,1)为2,出口位置(5,6)为-1,白格处送入0,障碍物位置送入1。 人机搏弈。 有15颗棋子,你和计算机轮流取,每次只允许取1─3颗,直到取尽为止,谁手中的棋子总数为奇数者为赢。先由键盘输入来确定计算机先取还

文档评论(0)

1亿VIP精品文档

相关文档