第 2、3 题必做题(批改)
(1) 第一部分,上机验证题,不需要交。
(2) 第二部分,上机练习题题,请安排时间完成。
一、验证练习题(不交):
题目 1:学习使用 debug 技术
请利用第 5 讲的求阶乘示例代码,采用单步跟踪(F11)、(F10)、以及加断点(F9)、监视变量
等手段,了解程序流程、了解变量的值是如何变化的。
示例代码,见附件: 1____2_jc.cpp
二、上机练习题:
题目 1:
请编写求阶乘的子函数 fac,并在此基础上求
�
�
N
n
n
1
!
(即:求 1!+2!+….+N! ) , N 用以下宏定义
给定
#define N 20
提示:对于 n!定义一个求阶乘的子函数 fac,主函数用循环结构 n 从 1 到 N 多次调用阶乘子函
数 fac 后累加。(子函数自行定义,请重视测试环节、特别留意 20 的阶乘有可能有溢出现象。
我们目前主要是练手,也许有更好的算法,本题主要练习循环和函数,只要答案误差在可接受
范围即可。)
题目 2:甲、乙 2 人猜“石头剪刀布”,猜了 10 轮。
现记录了甲、乙的 10 次分别为:
{‘S’, ‘S’,’P’,’R’,’P’,’R’, ‘S’, ‘S’,’P’,’R’ }
{‘S’,’P’,’R’,’R’, ‘S’, ‘S’,’P’,’R’,’P’,’P’ }
请编写子函数,判断每次猜拳的结果(可定义-1 为输,0 为平,1 为赢)。子函数要求如下:
int judge(char a, char b);
最终统计一下,谁总体上赢得多(几胜几负?)。
注:“石头剪刀布”的逻辑判断,请再次阅读“第 4 次上机”中的第 4 题的代码。请封装为一
个子函数,形参为甲乙二人的出拳,如’P’等。
程序不需要输入,输出格式如下(数值仅为示意):
甲 3 胜 5 负
题目 3:
以下文本内容(斜体表示):
存于字符数组中(每段不超过 500 字):
评论0