19道Python循环遍历,while,for语句测试题,网上看到的题目,自己不看答案全部做了一次,总共3个小时左右

# 1. 输出10行内容,每行的内容都是“*****”。
for i in range(0,10):
for j in range(0,10):
print("*",end="")
print()

# 2. 输出10行内容,每行的内容都不一样,第1行一个星号,第2行2个星号,依此类推第10行10个星号
for i in range(0,11):
for j in range(2*i-1):
print("*",end="")
print()


# 3. 输出9行内容,,第1行输出1,第2行输出12,第3行输出123,以此类推,第9行输出123456789。
for i in range(1,10):
for j in range(1,i+1):
print(j,end="")
print()


# 4. 计算10个99相加后的值并输出。

for i in range(1,11):
print(i*99)

# 5. 计算从1加到100的值并输出。

for i in range(1,100+1):
print(((i+1)/2)*i)


# 6. 计算10的阶乘(1x2x3x4x5x6x7x8x9x10)
a=1
for i in range(1,10+1):
a=a*i
print(a)

# 7. 计算2的20次方。不允许用**和pow()
num = 1
for i in range(1,20+1):
num = (num*2)
print(num)

# 8. 计算从1到1000以内所有奇数的和并输出。
sum = 0
for i in range(1,1000+1):
if i%2!=0:
# print(i)#打印所有奇数
sum = i+sum
print(sum)

# 9. 计算从1到1000以内所有能被3或者17整除的数的和并输出
sum = 0
for i in range(1,1000+1):
if i%3==0 and i%17==0:
print(i)#打印符合要求的数字
sum = i+sum
print(sum)

# 10. 计算从1到1000以内所有能同时被3,5和7整除的数的和并输出
sum = 0
for i in range(1,1000+1):
if i%3==0 and i%5==0 and i%7==0:
print(i)
sum = i+sum
print(sum)


# 11. 计算1到100以内能被7或者3整除但不能同时被这两者整除的数的个数。
num = 0
for i in range(1,100+1):
if i%7==0 or i%3==0 and not (i%3==0 and i%7==0):
num+=1
print(num,i)


# 12. 计算1到100以内能被7整除但不是偶数的数的个数。
num = 0
for i in range(1,100+1):
if i%2!=0 and i%7==0:
num+=1
print(num,i)


# 13. 计算从1到100临近两个整数的合并依次输出。比如第一次输出3(1+2),第二次输出5(2+3),最后一次输出199(99+100)。
num = 1
for i in range(1,100):
print("%d(%d+%d)"%((2*num+1),num,num+1))
num+=1

# 14. 给定一个整数n,判断是否是质数(质数是只能被1和它自身整除的数)
i = int(input("请输入一个正整数:"))

if i==2:
print("质数")

elif i>2:
for j in range(1,i):
if i%2==0:
print(i,"不是质数")
else:print(i,"这是质数")


# 15. 给定一个不大于9的数n,打印nn乘法表
num = int(input("请输入一个不大于9的正整数: "))
for i in range(1,num+1):
for j in range(1,i+1):
print("%d*%d=%2d"%(i,j,i*j),end=" ")
print()

# 16. 五位数中,对称的数称为回文数,打印所有的回文数并计算个数。如:12321
num = 0
for i in range(10000,99999):
i= str(i)
if i == i[::-1]:
num+=1
print(i,"这是回文数!",num)


# 17. 给定一个n位(不超过10)的整数,将该数按位逆置,例如给定12345变成54321,12320变成2321.
num = input("请输入一个不超过10位的正整数: ")
num = num[::-1]
num = int(num)
print(num)


# 18. 输出所有的三位水仙花数,其各位数字立方和等于该数本身。

o = 0
k = 0
for i in range(100,1000):
n1 = i//100
n2 = (i-n1*100)//10
n3 = i-n1*100-n2*10
if n1**3+n2**3+n3**3 ==i:
k+=1
print(i,"这是水仙花数",k)

else:
o+=1
print(i,"不是水仙花数",o)


# 19. 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第n次落地时,共经过多少米?
num = input("请输入落地次数:")
num = int(num)
sum = 0
for i in range(1,num+1):
sum = 100+sum/2
print(sum)
原文地址:https://www.cnblogs.com/skbarcode/p/10808657.html