蓝桥等考Python组别
九
级
第一部分:选择题
1、Python L
9
(15分)
运行下面程序,可以输出几行
“*”?
( )
for i in range(0,
3
):
for j in range(0,
5
):
print('*', end
=
'
')
print()
2
3
4
5
正确答案:B
2
、Python L
9
(15分)
运行下面程序,一共可以输出几个
“*”?
( )
for i in range(
1, 4
):
for j in range(
1, 6
):
print('*', end
=
'
')
print()
15
16
10
12
正确答案:
A
3、Python L
9
(20分)
运行下面
程序,输出的结果是
( )。
for i in range(3):
for j in range(4):
print(
'A'
,
end
=
'
')
print()
A A
A A
A A
A A A
A A A
A A A
A A A
A A A
A A A
A A A A
A A A A
A A A A
正确答案:D
第二部分:编程题
4、Python L
9
方阵图案
(
2
0分)
题目名称:方阵图案
题目描述:
输入一个正整数n,用数字
“
8
”
输出n行n列的方阵
图案
。
提示:
1.print(x, end = ' ')语句可以输出指定内容,以空格结尾;
2.print()语句不输出任何内容,表示换行。
输入:
一个正整数n(
2<=n<=10
)。
输出:
用数字
“
8
”
输出n行n列的方阵
图案
,每行相邻两个数字用一个空格隔开。
注意:
输出时行末尾是否有空格,不影响答案的正确性。
输入样例
1
:
3
输出样例
1
:
8 8 8
8 8 8
8 8 8
输入样例
2
:
4
输出样例
2
:
8 8 8 8
8 8 8 8
8 8 8 8
8 8 8 8
参考程序:
n = int(input())
for i in range(n):
for j in range(n):
print(
8
, end = ' ')
print()
测试数据:
1.in
3
1.out
8 8 8
8 8 8
8 8 8
2.in
4
2.out
8 8 8 8
8 8 8 8
8 8 8 8
8 8 8 8
3.in
5
3.out
8 8 8 8 8
8 8 8 8 8
8 8 8 8 8
8 8 8 8 8
8 8 8 8 8
4.in
8
4.out
8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8
5.in
10
5.out
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 8 8
5
、Python L
9
小猫分
鱼(
3
0分)
题目名称:
小猫分
鱼
题目描述:
猫妈妈钓了
n条鱼
,
分给
小白猫和小黄猫
,要求:
1.每
只
小猫都
要
有鱼;
2.
小白猫
分到的鱼比
小黄猫
多;
3.
小白猫
分到的鱼不超过
小黄猫
的2倍;
4.不
一定要
把
n条鱼都
分完。
输入一个正整数n,输出有多少种方法可以满足以上要求。
例如:n=5时,符合要求的分配方法有2种,如下图所示。
输入:
一个正整数
n(
3<=
n<=60)。
输出:
一个整数,
表示按照题目要求分配n条鱼的方法数。
输入样例:
5
输出样例:
2
参考程序
1
:
n = int(input())
ans = 0
for i in range(1, n + 1): #i是小黄猫分到的鱼的数量
for j in range(i + 1, 2 * i + 1): #j是小白猫分到的鱼的数量
if i + j <= n:
ans += 1
print(ans)
参考程序
2
:
n = int(input())
ans = 0
for i in range(1, n + 1):
for j in range(i + 1, n - i + 1):
if j <= 2 * i:
ans += 1
print(ans)
参考程序3:
n = int(input())
ans = 0
for i in range(1, n + 1): #i是小黄猫分到的鱼的数量
for j in range(i + 1, min(2 * i + 1, n - i + 1)): #j是小白猫分到的鱼的数量
ans += 1
print(ans)
测试数据:
1.in
5
1.out
2
2.in
7
2.out
4
3.in
15
3.out
19
4.in
22
4.out
40
5.in
34
5.out
96
蓝桥杯青少组Python组别9级编程练习真题(第7套,共8套)