关于python基础语法的一些基础问题(循环与判断)

第一题 输入一个数,判断它是否能被3或5或7整除

number = input("请输入数:")
number= int(number)

if number % 3 == 0:
    print("此数能被3整除")
else:
    print("此数无法被3整除")

if number % 7 == 0:
    print("此数能被7整除")
else:
    print("此数无法被7整除")

if number % 5 == 0:
    print("此数能被5整除")
else:
    print("此数无法被5整除")

第二题 打印某年某月有多少天。

number1 = int(input("请输入年:"))
number2 = int(input("请输入月:"))

if number2 == 1 or number2 == 3 or number2 == 5 or number2 == 7 or number2 == 8 or number2 == 10 or number2  == 12:
    print("该月有31天")
elif number2 == 4 or number2 == 6 or number2 == 9 or number2 == 11: #number2 in (4,6,9,11):
    print("该月有30天")
elif number1 % 4 == 0 and number1 % 100 !=0 and number2 == 2:
    print("该月有29天")
else:
    print("该月有28天")

第三题 做学院评奖系统

  • 1)如果数学成绩大于80分并且语文成绩大于80分,获奖学金500元。
  • 2)如果数学小于30并且语文小于30分,输出重修
math = input("请输入数学成绩:")
chinese = input("请输入语文成绩:")
math= int(math)
chinese= int(chinese)

if math >= 0 and math <= 100 and chinese >= 0 and chinese <= 100:
    if math > 80 and chinese > 80:
        print("获得奖学金500元")
    elif math < 30 and chinese < 30:
        print("重修")
else:
    print("输入的成绩无效")

第四题 定义一个字符,判断是否为字母。

str_1 = "ABC"
print(str_1.isalpha())

延伸:
str.isalnum() 所有字符都是数字或者字母
str.isalpha() 所有字符都是字母
str.isdigit() 所有字符都是数字
str.islower() 所有字符都是小写
str.isupper() 所有字符都是大写
str.istitle() 所有单词都是首字母大写,像标题
str.isspace() 所有字符都是空白字符、\t、\n、\r

第五题 定义一个整数,计算其平方值和立方值

number = int(input("请输入一个整数"))
print(pow(number , 2))
print(pow(number , 3))

第六题 定义一个大 写字母,把它转换为小写字母后显示出来

str = "ABC"
print(str.lower())

第七题 定义三个数,求出其中的最大值

第一种:

a = 10
b = 20
c = 35

d = a if a>b else b
e = d if d>c else c

print(e)

第二种:

a = 10
b = 20
c = 35

print(max(max(a,b),c))

第八题 打印九九乘法表

for i in range(1,10):
    for j in range(1,i+1):
        print(j,"*",i,"=",j*i," ",end="")        #end=""   不换行
    print()

第九题 打印菱形

for hang in range(1,10):
    if hang <= 5:
        for j in range(1,5-hang+1):
            print(" ",end="")
        for i in range(1,2*hang):
            print("*",end="")
    else:
        for j in range(1,hang-5+1):
            print(" ",end="")
        for i in range(1,19-2*hang+1):
            print("*",end="")
    print()

ps:此类题主要考虑出当前行数,空白数,星星个数及总行数关系即可解出

第十题 百钱买百鸡 100 买100只,公鸡5,母鸡3,小鸡1元三个(最多两层循环)

for small in range(0,100,3):
    for m in range(20):
        if 5*m + 3*(100 - m - small)+small/3 == 100 and (100 - m - small) > 0:
            print(m,100 - m - small,small)

第十一题 找出一个数的所有因子数

i = 1
num = int(input("请输入一个数"))
while i <= num:
    j = num
    while j >= i:
        if i * j == num:
            print(i,",",j)
        j -= 1
    i += 1

第十二题 定义一个正整数如:1205 统计它的各位数字中零的个数,并求各位数字中的最大者

num = int(input("请输入一个整数"))
a = len(str(num))
sum = 0
temp = 0             #temp用来存最大数
for i in range(0,a):
    b = num // 10**i % 10    #从末位开始取各个位的数
    if b == 0:
        sum += 1
    if b > temp:
        temp = b
print(sum)
print(temp)

第十三题 有1020个西瓜,第一天卖掉总数的一半后又多卖出两个,以后每天卖剩下的一半多两个,问几天以后能卖完

num = 1020
day = 0
while num > 0:
    num = num/2 - 2
    day += 1
print(day)

第十四题 循环录入Java课的学生成绩,统计分数大于等于 80分的学生比例(使用continue)

sum = 0
a = 0
while True:
    grade = int(input("请输入学生的成绩"))
    a = a + 1
    if grade < 80:
        print(sum / a)
        continue
    else:
        sum = sum + 1
    print(sum/a)

第十五题 斐波那契数列(兔子繁殖问题)

eg:1,1,2,3,5,8,13,21…

month = 3
f1 = 1
f2 = 1
while month <= 12:
    temp = f1 + f2
    f1 = f2
    f2 = temp
    print("月份:",month,"兔子对数",f2)
    month += 1

第十六题 从控制台输入一个正整数,并进行反转输出

第一种:

num = int(input("请输入一个整数"))
a = len(str(num))
sum = 0
for i in range(0,a):
    b = num // 10**i % 10
    sum = sum + b*10**(a-i-1)
print(sum)

第二种:

a = input("请输入一个整数:")
print(a [::-1])    #-2则为反着跳动2两位输出

第十七题 排序列表

第一种:

a = [9,5,8,7,4,6,3,1,2,0]
a.sort()   #将原来a list 中的数据删除,换成排序后list
print(a)

第二种:

a = [9,5,8,7,4,6,3,1,2,0]
b = sorted(a)   #不将原来a list 中的数据删除,排序后list赋值给b
print(b)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值