4.循环结构
4.循环结构
当一件食需要重复去做时,就使用循环结构。
一、for循环
1. range()函数
range(开始,结束,步长),如果range()中只放一个数字,就是获得0到这个数字减1
#输出1—10之间所有的数字
for i in range(1,11):
print(i,end=' ')
2. for循环输出字符串
a='hvk'
for i in a:
print(i,end=' ')
二、while循环
1. while循环
格式:
while 条件:
条件成立执行的语句
i=1
while i<=10:
print(i,end=' ')
i+=1
2. while - else循环
格式:
while 条件:
条件成立的语句
else:
条件不成立的语句
i=1
while i<=10:
print(i)
i+=1
else:
print('输出结束')
三、死循环
i=1
while 1:
print(i)
四、break和continue
break:结束循环
i=1
while i<=10:
print(i)
if i==5:
break
i+=1
continue:结束本次循环
for i in range(1,11):
if i==5:
continue
print(i)
五、循环嵌套
外层循环执行一次,内层循环执行多次
#****
#****
#****
for i in range(3): #外层循环控制行
for i in range(4): #内层循环控制列
print('*',end='')
print()
六、循环结构习题
1.for循环求和
【题目描述】
利用for循环。计算输出1+2+3+...+n
的和。
【输入】
输入n
。
【输出】
如题述,之和。
【输入样例】
10
【输出样例】
55
【提示】
【数据规模及约定】
对于100%的数据,1≤n≤100。
n=int(input())
a=0
for i in range(1,n+1):
a+=i
print(a)
2.输出偶数
【题目描述】
按照由小到大的顺序,输出1∼n
之间的所有偶数。
【输入】
输入n
。
【输出】
输出为一行,各个偶数之间用一个空格隔开。
【输入样例】
10
【输出样例】
2 4 6 8 10
【提示】
【数据规模及约定】
对于所有数据,1≤n≤100
n=int(input())
for i in range(1,n+1):
if i%2==0:
print(i,end=' ')
3.输出奇偶数之和
【题目描述】
利用for循环,分别输出1∼n
之间的所有奇数的和、偶数的和。
【输入】
输入n
。
【输出】
输出为一行,两个数(用一个空格隔开),偶数之和与奇数之和。
【输入样例】
10
【输出样例】
30 25
【提示】
【数据规模及约定】
对于所有数据,1≤n≤100
n=int(input())
a=0
b=0
for i in range(1,n+1):
if i%2==0:
a+=i
else:
b+=i
print(a,b)
4.求阶乘
【题目描述】
利用for循环求n!
的值。
提示,n!=1×2×...×n
。
【输入】
输入一个正整数n
。
【输出】
输出n!
的值。
【输入样例】
4
【输出样例】
24
【提示】
【数据规模及约定】
对于所有数据,1≤n≤20
n=int(input())
i=1
a=1
while i<=n:
a*=i
i+=1
print(a)
5.求平均年龄
【题目描述】
班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位。
【输入】
第一行有一个整数n(1<= n <= 100),表示学生的人数。其后n行每行有1个整数,表示每个学生的年龄,取值为15到25。
【输出】
输出一行,该行包含一个浮点数,为要求的平均年龄,保留到小数点后两位。
【输入样例】
2
18
17
【输出样例】
17.50
n=int(input())
a=0
for i in range(1,n+1):
m=int(input())
a+=m
print("%.2f"%(a/n))
6.均值
【题目描述】
给出一组样本数据,包含n个浮点数,计算其均值,精确到小数点后4位。
【输入】
输入有两行,第一行包含一个整数n(n小于100),代表样本容量;第二行包含n个绝对值不超过1000的浮点数,代表各个样本数据。
【输出】
输出一行,包含一个浮点数,表示均值,精确到小数点后4位。
【输入样例】
2
1.0 3.0
【输出样例】
2.0000
n=int(input())
a=list(map(float,input().split()))
b=0
for i in a:
b+=i
print("%.4f"%(b/n))
7.求整数的和与均值
【题目描述】
读入n(1≤n≤10000)个整数,求它们的和与均值。
【输入】
输入第一行是一个整数n,表示有n个整数。
第2~n+1行每行包含1个整数。每个整数的绝对值均不超过10000。
【输出】
输出一行,先输出和,再输出平均值(保留到小数点后5位),两个数间用单个空格分隔。
【输入样例】
4
344
222
343
222
【输出样例】
1131 282.75000
n=int(input())
a=0
for i in range(n):
m=int(input())
a+=m
print(a,end=' ')
print("%.5f"%(a/n))
8.最高的分数
【题目描述】
孙老师讲授的《计算概论》这门课期中考试刚刚结束,他想知道考试中取得的最高分数。因为人数比较多,他觉得这件事情交给计算机来做比较方便。你能帮孙老师解决这个问题吗?
【输入】
输入两行,第一行为整数n(1 <= n < 100),表示参加这次考试的人数.第二行是这n个学生的成绩,相邻两个数之间用单个空格隔开。所有成绩均为0到100之间的整数。
【输出】
输出一个整数,即最高的成绩。
【输入样例】
5
85 78 90 99 60
【输出样例】
99
n=int(input())
a=list(map(int,input().split()))
max1=0
for i in a:
if i>max1:
max1=i
print(max1)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)