第3章实验内容
3.1 第一套实验
3.1.1 OPS欢迎您
基本描述
编制最简单程序,提交给在线判题系统(OPS),试试它对你的反应。
输入描述
本题不涉及输入数据,也许是唯一不涉及输入数据的题。因此,无须与标准输入设备打交道。
输出描述
程序应输出“Welcome to the OPS.”字串,并以回车结束。你也可以试试,如果不输出回车,其代码能否通过提交系统的测试。
样本输出
Welcome to the OPS.
3.1.2 一个@字符矩形
基本描述
根据读入的n值,输出以@为填充字符、宽为20、高为n的字符矩形。
输入描述
输入数据只有一个正整数n(1≤n≤50)。
输出描述
输出以@为填充字符、宽为20、高为n的字符矩形。显然为了结束每行字符,在输出20个@字符后,应输出一个回车,最后一行也必须与前面一样输出回车,否则提交系统不会予以认可。
样本输入
C++程序设计教程(第二版)实验指导
28
5
样本输出
@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@
3.1.3 一个#字符正方形
基本描述
根据读入的n值,输出以#为填充字符、边长为n的字符正方形。
输入描述
输入数据只有一个正整数n(1≤n≤50)。
输出描述
输出以#为填充字符、边长为n的字符正方形。显然为了结束每行字符,在行末应输出回车,最后一行也必须与前面一样输出回车,否则提交系统不会予以认可。
样本输入
5
样本输出
#####
#####
#####
#####
#####
3.1.4 一个字符三角形
基本描述
根据读入的字符值,输出以该字符为填充字符的定长等腰三角形。
输入描述
输入数据只有一个字符值c('A'≤c≤'Z')。
输出描述
第3章实验内容29 输出以c为填充字符、高为7、底边长为13的等腰三角形。同样,每行结束时应回车。样本输入
A
样本输出
A
AAA
AAAAA
AAAAAAA
AAAAAAAAA
AAAAAAAAAAA
AAAAAAAAAAAAA
3.1.5 正方形面积
基本描述
根据读入的正整数值,输出其正方形的面积数。
输入描述
输入数据含有不超过50个的正整数n(1≤n≤10 000),每个正整数之间以空格隔开。输出描述
每次读入一个正整数,便输出其正方形的面积数,在输出每个面积数时应回车。
样本输入
1 3 5 7
样本输出
1
9
25
49
3.1.6 A–B
基本描述
计算二整数之差。
输入描述
C++程序设计教程(第二版)实验指导
30
输入数据含有不超过50个的整数对,每个整数以及每对整数的运算结果都不会超过±231。
输出描述
对于每次读入的一对整数,输出前者减去后者的差。每个结果应以回车结束。
样本输入
1 3 5 7
样本输出
-2
-2
3.2 第二套实验
3.2.1 字符三角形
基本描述
根据读入的字符值以及三角形的高,输出以该字符为填充字符的等腰三角形。
输入描述
输入数据含有不超过50组的数据,每组数据包括一个可见字符c(33≤c≤126)和一个整数n(1≤n≤30)。
输出描述
输出以c为填充字符、高为n的等腰三角形,勾画每个三角形时都应另起一行。
样本输入
A 5
B 3
样本输出
A
AAA
AAAAA
AAAAAAA
AAAAAAAAA
B
BBB
第3章实验内容31 BBBBB
3.2.2 字符菱形
基本描述
根据读入的字符和边长,勾画字符菱形。
输入描述
输入数据含有不超过50组的数据,每组数据包括一个可见字符c和一个整数n(1≤n≤30)。
输出描述
输出以c为填充字符、边长为n的菱形,勾画每个菱形时都应另起一行。
样本输入
A 5
B 3
样本输出
A
AAA
AAAAA
AAAAAAA
AAAAAAAAA
AAAAAAA
AAAAA
AAA
A
B
BBB
BBBBB
BBB
B
3.2.3 背靠背字符三角形
基本描述
根据读入的字符和高,勾画背靠背字符三角形。
输入描述
输入数据含有不超过50组的数据,每组数据包括一个可见字符c和一个整数n(1≤n≤
C++程序设计教程(第二版)实验指导
32
30)。
输出描述
输出以c为填充字符、高为n的背靠背字符三角形,勾画每个三角形时都应另起一行。样本输入
W 5 B 3
样本输出
W W
WW WW
WWW WWW
WWWW WWWW
WWWWW WWWWW
B B
BB BB
BBB BBB
3.2.4 交替字符倒三角形
基本描述
根据读入的高,勾画ST字符交替的倒三角形。
输入描述
输入数据含有不超过50个正整数n(1≤n≤30)。
输出描述
输出以n为高的ST字符交替的倒三角形,勾画每个三角形时都应另起一行。
样本输入
3 10
样本输出
STSTS
STS
S
STSTSTSTSTSTSTSTSTS
STSTSTSTSTSTSTSTS
STSTSTSTSTSTSTS
STSTSTSTSTSTS
STSTSTSTSTS
第3章实验内容33
STSTSTSTS
STSTSTS
STSTS
STS
S
3.2.5 格式阵列一
基本描述
根据读入的阶,按样例打印格式阵列。
输入描述
输入数据含有不超过50个正整数n(1≤n≤25)。
输出描述
输出以n为阶的格式阵列。
每行开始先打印行号,行号为两个字符宽,右对齐,行号与元素之间空2格。
每个元素占3个字符宽。右对齐,元素值起始位置为0,以后每向右前进一个,元素值便取前一元素加1除n的余数,每进到下一行,起始的元素值为上一元素加1除以n的余数,以此类推。
每个格式阵列之间应有一空行,最前与最后不应有空行。
在样本输出中,表示空格。
样本输入
6 3
样本输出
101234 5
2123450
323450 1
434501 2
545012 3
650123 4
101 2
2120
320 1
3.2.6 格式阵列二
基本描述
C++程序设计教程(第二版)实验指导
34
根据读入的阶,按样例打印格式阵列。
输入描述
输入数据含有不超过50个正整数n(1≤n≤9)。
输出描述
输出以n为阶的格式阵列。
每个元素由一对括号和括号中的整数对组成,元素前应空一格。每个元素的整数对正是该元素的行号与列号。
每个格式阵列之间应有一空行,最前与最后不应有空行。
在样本输出中,表示空格。
样本输入
6 3
样本输出
(1,1)(1,2)(1,3)(1,4)(1,5)(1,6)
(2,1)(2,2)(2,3)(2,4)(2,5)(2,6)
(3,1)(3,2)(3,3)(3,4)(3,5)(3,6)
(4,1)(4,2)(4,3)(4,4)(4,5)(4,6)
(5,1)(5,2)(5,3)(5,4)(5,5)(5,6)
(6,1)(6,2)(6,3)(6,4)(6,5)(6,6)
(1,1)(1,2)(1,3)
(2,1)(2,2)(2,3)
(3,1)(3,2)(3,3)
3.3 第三套实验
3.3.1 1!到n!的和
基本描述
求1!+2!+3!+4!+…+n!的结果。
输入描述
输入数据含有不多于50个的正整数n(1≤n≤12)。
输出描述
第3章实验内容35 对于每个n,输出计算结果。每个计算结果应占独立一行。
样本输入
3 6
样本输出
9
873
3.3.2 等比数列
基本描述
已知q与n,求等比数列之和:
1+q+q2+q3+q4+…+q n
输入描述
输入数据含有不多于50对的数据,每对数据含有一个整数n(1≤n≤20),一个小数q(0 输出描述 对于每组数据n和q,计算其等比数列的和,精确到小数点后3位,每个计算结果应占单独一行。 样本输入 6 0.3 5 1.3 样本输出 1.428 12.756 3.3.3 菲波那契数 基本描述 菲波那契(fibonacci)数(简称菲氏数)定义为: f(0) = 0 f(1) = 1 f(n) = f(n–1) + f(n–2) n>1的整数 如果写出菲氏数,则应该是: C++程序设计教程(第二版)实验指导 36 0 1 1 2 3 5 8 13 21 34 … 如果求其第6项,则应为8。 求第n项菲氏数。 输入描述 输入数据含有不多于50个的正整数n(0≤n≤46)。 输出描述 对于每个n,计算其第n项菲氏数,每个结果应占单独一行。 样本输入 6 10 样本输出 8 55 3.3.4 最大公约数 基本描述 求两个正整数的最大公约数。 输入描述 输入数据含有不多于50对的数据,每对数据由两个正整数(0 对于每组数据n1和n2,计算最大公约数,每个计算结果应占单独一行。 样本输入 6 5 18 12 样本输出 1 6 3.3.5 最小公倍数 基本描述 第3章实验内容37 求两个正整数的最小公倍数。