image

编辑人: 浅唱

calendar2025-07-12

message7

visits549

第12届蓝桥杯Python青少组中/高级组选拔赛(STEMA)2020年11月真题参考答案

一、实操题

1、编程实现:

输入一个正整数,输出这个正整数是一个几位数。

输入描述:

输入一个正整数

输出描述:

输出这个正整数是一个几位数


样例输入:

12

样例输出:

2

参考答案:br />```pythondef count_digits(n):count = 0while n > 0:n //= 10count += 1return countn = int(input("请输入一个正整数:"))print(f"n是一个count_digits(n)位数")```


2、编程实现:

输入一个正整数,然后分行输出这个正整数奇数位上的数(个位数为第一位)。

输入描述:

输入一个正整数

输出描述:

分行输出这个正整数奇数位上的数


样例输入:

123

样例输出:

3
1

参考答案:br />```pythonn = int(input())str_n = str(n)result = []for i in range(len(str_n)):if i % 2 == 1:result.append(str_n[i])for i, s in enumerate(result):print(s, end='\n' if i == len(result) - 1 else '\n')```


3、提示信息:

平方是一种运算,比如:a的平方表示a×a。

例如:2的平方为4 (也就是2*2的积)

例如:4的平方为16 (也就是4*4的积)

编程实现:

输入一个正整数N(N<30),输出1到N(包含1和N)之间所有正整数的平方,且所输出的平方数之间以英文逗号隔开。

输入描述:

输入一个正整数N(N<30)

输出描述:

输出所有正整数的平方数,且所输出的平方数之间以英文逗号隔开


样例输入:

3

样例输出:

1,4,9

参考答案:br />根据题目要求,我们需要编写一个程序,输入一个正整数N,然后输出从1到N之间所有正整数的平方,且所输出的平方数之间以英文逗号隔开。在Python中,我们可以使用for循环来遍历1到N之间的所有正整数,然后计算它们的平方,并将结果以英文逗号隔开输出。具体的代码实现如下:```pythonN = int(input())result = []for i in range(1, N+1):square = i**2result.append(str(square))print(','.join(result))```在这个程序中,我们首先使用input函数获取用户输入的N值,并将其转换为整数类型。然后,我们使用for循环遍历1到N之间的所有正整数,计算它们的平方,并将结果以字符串形式添加到result列表中。最后,我们使用join函数将result列表中的所有字符串以英文逗号隔开输出。


4、提示信息:

倍数与约数:如果a能被b整除,a就叫做b的倍数,b就叫做a的约数。约数和倍数都表示一个整数与另一个整数的关系,不能单独存在。

最大公约数:几个整数中公有的约数,叫做这几个数的公约数;其中最大的一个,叫做这几个数的最大公约数。

举例:12、16的公约数有1、2、4,其中最大的一个是4,所以4是12与16的最大公约数。

最小公倍数:几个自然数公有的倍数,叫做这几个数的公倍数,其中最小的一个,叫做这几个数的最小公倍数。

举例:4的倍数有4、8、12、16,……,6的倍数有6、12、18、24,……,4和6的公倍数有12、24,……,其中最小的是12,所以4和6最小公倍数为12。

编程实现:

分别输入两个正整数(1<正整数<201),输出这两个正整数的最大公约数M及最小公倍数N(注:M和N之间以一个英文逗号隔开)。


输入描述:

第1行输入第一个正整数

第2行输入第二个正整数

输出描述:

输出这两个正整数的最大公约数M及最小公倍数N(M和N之间以一个英文逗号隔开)      


样例输入:

4
6

样例输出:

2,12

参考答案:br />输入两个正整数,输出它们的最大公约数M及最小公倍数N。


5、提示信息:

一个正整数如果任何一个数位小于等于右边相邻的数位,则称为一个数位递增数。

例如:

1135是一个数位递增数

1024不是一个数位递增数

题目描述:

输入一个正整数 n(10<n<10001),输出10到n (包含10和n)中有多少个数位递增数。

例如:输入15,10到15之间的数位递增数有:11、12、13、14、15。一共有5个。

输入描述:

输入一个正整数 n(10<n<10001)

输出描述:

输出10到n中有多少个数位递增数


样例输入:

15

样例输出:

5

参考答案:对于输入的正整数n,我们需要遍历从10到n的所有整数,并检查每个整数是否为数位递增数。如果是数位递增数,则计数器加1。最后输出计数器的值。


喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:第12届蓝桥杯Python青少组中/高级组选拔赛(STEMA)2020年11月真题参考答案

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share