fp=fopen(\
while((ch=getchar())!='\\n') fputc(ch,fp); fclose(fp); }
11.25 若向磁盘上已有的字符文件添加字符(在文件尾插入字符),可以选用的文件操作方式串是 。
(A)\ (B)\
第十二章习题
12.1 用动态链表求解约瑟夫问题。
31?x12.2 用辛普森方法求积分dx。
0.5ex?e?x??12.3 用辛普森方法求积分(1?sinx)dx。
0112.4 用二分法和截弦法求方程x2?4x?1=0的根。 12.5 用二分法求超越方程tanx?kx=0的5个正根。
12.6 用二分法、牛顿法和截弦法求方程x3?2x2+4x+1=0在x=0附近的一个实根。 12.7 用牛顿法求方程x3?2x?5=0在x=2附近的一个实根。 12.8 用高斯消元法和赛德尔迭代法求解下列方程组。
?0.7x1+0.2x2?0.1x3?0.2x4=0.2 0.2x1?0.8x2?0.3x3?0.1x4= ?0.9 0.1x1?0.2x2?0.9x3?0.2x4= ?2.2
0.3x1?0.2x2?0.2x3?0.8x4= ?2.7
赛德尔迭代法的初始解可设为全0。
12.9 不设堆栈,编写求解八皇后问题的非递归程序。
12.10 传教士与吃人生番:三个传教士要同三个吃人生番过河,却只有一条小船,每次至多乘两人。在穿梭运载过程中,无论在此岸还是彼岸,只要生番多于教士,后者就被吃掉,试为传教士设计一个安全的渡河方案。
12.11 跳马(骑士巡游)问题:在一个5?5格棋盘上,从某个格子出发,按日字跳马,要求不重复地跳经所有方格。求出符合要求的所有跳马方案。 12.12 打印m阶魔方矩阵。(m为奇数)
魔方矩阵是这样一个方阵,它用1,2,…,m2共m2个数填满每个位置,使行、列、对角线元素之和均相等。 比如:m=3时,有 8 1 6 3 5 7 4 9 2
各行、列、对角元素元素之和都等于15。
12.13 编写程序,产生10万个标准正态分布随机数并存于字符文件。用另外一个程序统计文件中的随机数概率。统计的方法是
P{X 小于x的随机数的个数 100000其中x可以从?3开始,每隔0.1、0.2或0.3递增,直到x=3时停止。 统计结果也用字符文件保存,并与概率表中的理论值比较。 12.14 编写程序,产生10万个泊松分布随机数并存于字符文件。用另外一个程序统计文件中的随机数概率。统计的方法是 等于k的随机数的个数 100000k可取0,1,2,3…,一直到3?附近。统计结果也用字符文件保存。对比理论值与统计值。 为了减少计算量,?不要取太大,一般取3~10。 12.15 假设有一个共100行的文本文件,其每行内容为一道试题。编写一个程序,使它能够随机产生有30道考题的试卷。将随机产生的试卷存为一个文本文件,并在文件开始处加入适当的试卷标题。 12.16 建立一个班级学生成绩管理系统,要求人数不低于25人,课程成绩不少于5门课。程序功能自拟。学生成绩可以用正态分布随机数产生。比如,课程A学生成绩近似符合均值为70,方差为25的正态分布。产生的在成绩如果低于0分则作为0分处理,如果高于100分,则作为100分处理。 P{N=k} =