Python编程题之流程控制语句
目录
基本编程题
题目1
1.获得用户输入的一组数字,采用逗号分隔,输出其中的最大值。
输入输出示例
- 输入:8,3,5,7
- 输出:8
题目2
s="9e10"是一个浮点数形式字符串,即包含小数点或采用科学计数法形式表示的字符串,编写程序判断s是否是浮点数形式字符串。如果是则输出True,否则输出False。
题目3
s="123"是一个整数形式字符串,编写程序判断 s 是否是整数形式字符串。如果是则输出 True,否则输出 False。要求代码不超过 2 行
题目4
ls 是一个列表,内容如下:
ls = [123, "456", 789, "123", 456, "789"]
请补充如下代码,求其各整数元素的和:
ls = [123, "456", 789, "123", 456, "789"] s = 0 for item in ls: if ___①_ _ == type(123): s += ___②_ _ print(s)
题目5
while True:可以构成一个“死循环”。请编写程序利用这个死循环完成如下功能:循环获得用户输入,直至用户输入字符 y 或 Y 为止,并退出程序。
输入格式
输入 n 行字符串,最后输入 y 或者 Y
输出格式
输出 n 行字符串,最后跳出循环
题目6
以论语中一句话作为字符串变量 s,补充程序,分别输出字符串 s 中汉字和标点符号的个数。
s = "学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠,不亦君子乎?" n = 0 # 汉字个数 m = 0 # 标点符号个数 ____①____ # 在这里补充代码,可以多行 print("字符数为{},标点符号数为{}。".format(n, m))
题目7
使用程序计算整数 N 到整数 N+100 之间所有奇数的数值和,不包含 N+100,并将结果输出。整数 N 由用户给出,代码片段如下,补全代码。不判断输入异常。
N = input("请输入一个整数: ") ____①____ # 可以是多行代码
输入输出示例
输入 输出 3 2600
题目8
根据斐波那契数列的定义,F(0)=0,F(1)=1, F(n)=F(n–1)+F(n–2)(n≥2),输出不大于 100 的序列元素,提示代码如下:
a,b = 0, 1 while ____①____: print(a, end = ",") a, b = ____②____
题目9
以 123 为随机数种子,随机生成 10 个在 1 到 999(含)之间的随机数,以逗号分隔,打印输出,请补充横线处代码。提示代码如下
import random ____①____ for i in range(____②____): print(____③____, end=",")
题目10
(选自测试题5) 编写程序,从键盘上获得用户连续输入且用逗号分隔的若干个数字(不必以逗号结尾),计算所有输入数字的和并输出,给出代码提示如下。
n = input() nums = ____①____ s = 0 for i in nums: ____②____ print(s)
输入输出示例
输入 输出 1,2,3,4 10
题目11
(选自测试题5)
编写程序,获得用户输入的数值 M 和 N,求 M 和 N 的最大公约数。提示代码如下。
def GreatCommonDivisor(a,b): if b > a: a,b = b,a r = 1 while r != 0: ____①____ a = b b = r return a m = eval(input()) n = eval(input()) print(____②____)
基本编程题:答案与解析
1.参考代码:
data = input() a = data.split(",") b = [] for i in a: b.append(int(i)) print(max(b))
代码2:
num_str = input("请输入一组数:") num = num_str.split(",") print(num) max = eval(num[0]) for i in num: value = eval(i) if value > max: max =value print("最大值",max)
2.
s = "9e10" if type(eval(s)) == type(12.0): print("True") else: print("False")
3.
s = "123" print("True" if type(eval(s)) == type(1) else "False")
4.
ls = [123, "456", 789, "123", 456, "789"] s = 0 for item in ls: if type(item) == type(123): s += item print(s)
5.
while True: s = input() if s in ["y", "Y"]: break
代码2:
while True: s = input("请输入数据:") print("您输入的是",s) if s == 'y' or s == 'Y': break; print("循环结束")
6.
s = "学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠,不亦君子乎?" n = 0 # 汉字个数 m = 0 # 标点符号个数 m = s.count(',') + s.count('?') n = len(s) - m print("字符数为{},标点符号数为{}。".format(n, m))
7.
N = input("请输入一个整数: ") s = 0 for i in range(eval(N), eval(N)+100): if i%2 == 1: s += i print(s)
8.
a, b = 0, 1 while a<=100: print(a, end=',') a, b = b, a + b
9.
import random random.seed(123) for i in range(10): print(random.randint(1,999), end=",")
10.
11. </nowiki>