Python中if判断习题练习

1:两个数交换,要求使用异或法完成

思路:
根据异或原理可知:相同为0,不同为1
a=2 #a的二进制为010
b=1 #b的二进制为001
#----------------
# 011=3,所以3为中间值,来进行交换
print(“交换前的数字为;%s,%s”%(a,b))
a=a^b #a(010)^b(001)=(011),此时a=011,b=001
b=a^b #a(011)^b(001)=(011),此时b=010,a=011
a=a^b #a(011)^b(010)=(001),此时a=001,b=010
print(“交换后的数字为;%s,%s”%(a,b))
综上所诉:其实这种原理也与找中间商类似,不过这个异或用的是数值,说实话我感觉和找中间商交换物品原理一样。

a=2  
b=1  
print("交换前的数字为;%s,%s"%(a,b))
a=a^b 
b=a^b
a=a^b 
print("交换后的数字为;%s,%s"%(a,b))

在这里插入图片描述

2:判断一个数,是否是2的指数

num=int(input("请输入一个数字;"))
if num&(num - 1) == 0:
    {
        print("这个数字是2的指数:%s"%num)
    }
else :
    {
        print("这个不是2的指数,请换个数字输入叭!!!!")
    }

在这里插入图片描述

2的指数 
	0000 0010	0000 0001
	0000 0100	0000 0011
	0000 1000	0000 0111
	0001 0000	0000 1111

提示:所有2的指数:n&(n - 1) == 0

3:给定成绩,判断用户成绩的档次

100:提示满分
90~100:优秀
80~100:良好
70~80:还可以,多多努力
60~70:合格
0~60:不合格
0:鸡蛋
grade=int(input("请输入您的成绩:"))
if(grade>100):
    {
  print("亲,请你正确输入,不要捣乱!!!")
    }
elif grade==100:
    {
   print("您真棒!!您是满分,给你点个赞")
    }
elif 90<=grade<100:
    {
   print("您的成绩等级为优秀")
    }
elif grade>=80:
    {
   print("您的成绩等级为良好")
    }
elif grade>=70:
    {
   print("您的成绩还可以,多多努力")
    }
elif grade>=60:
    {
   print("您的成绩等级为合格")
    }
elif 0<grade<60:
    {
   print("您的成绩等级为不合格!!要加油哦")
    }
elif grade==0 :
    {
        print("你可以带一个鸡蛋(0分)回家啦!!1")
    }

在这里插入图片描述

4:有1、3、5、7、9组成的所有不重复的四位数之和是多少?( B)

A、666700			B、666600
C、678860			D、665500

5:一个会议有12个员工,假设已有8个员工是女性,求所有员工都是女性的概率(D )

A、11/23			B、12/35
C、2/9				D、1/8

6:

在控制台上,输入如下信息
a		a^2		a^3
1		1		1
2		4		8
3		9		27
a=int(input("请输入一个数字:"))
print("a的值、平方、立方分别为:%s,%s,%s"%(a,a*a,a*a*a))

在这里插入图片描述

7:下列哪一项是“4是奇数或-9为正数”的否定(C )

A、4是偶数或-9不是负数
B、4是奇数或-9不是负数
C、4是偶数和-9是负数
D、4是奇数和-9不是负数

8:如果A是“10110110”,B是“11100000”,C是“10100000”,下面成立的是(D )

A、	C=A|B
B、	C=~A
C、	C=~B
D、	C=A&B

9:判断一个整数是奇数还是偶数,至少有两种方式实现(位运算已经讲解的话)

方法一思路:
第一种方法:能够被2整除都是偶数,反之,则是奇数

# 方法一:
num=int(input("请输入一个数字:"))
if num%2==0 :
    print("这是一个偶数:%s"%num)
else:
    print("这个数字是奇数哦!!")

在这里插入图片描述
方法二 思路:
利用&的规则:因为每个奇数的二进制最后一位数都为1,那么我们就可以用与运算来进行计算,如果是0那么就是偶数,如果是1那么它就是奇数

# 方法二:
num=int(input("请输入一个数字:"))
if num&1:
   print("这是一个奇数:%s"%num)
else:
    print("这个数字是偶数哦!!")

在这里插入图片描述
方法三 思路:
方法三:往左移动
以1为例子,1是001
左移动1位是010=2,能够被2整除的数都是偶数

# 方法三:左移动
# 以1为例子,1是001
#    左移动1位是010=2,能够被2整除的数都是偶数
num=int(input("请输入一个数字:"))
if num<<1 and num%2==0:  
       print("这是一个偶数:%s"%num)
else:
    print("这个数字是奇数哦!!")

在这里插入图片描述
方法四思路:
方法四思路跟方法三一样

# 方法四:右移动
#  同方法三一样思路
num=int(input("请输入一个数字:"))
if num<<1 and num%2==0:  
       print("这是一个偶数:%s"%num)
else:
    print("这个数字是奇数哦!!")

在这里插入图片描述

10:求矩形的面积和周长

a=int(input("请输入数字a:"))
b=int(input("请输入数字b:"))
s=a*b
c=2*(a+b)
print("矩形的面积为:%s"%s)
print("矩形的周长为:%s"%c)

在这里插入图片描述

11:根据天数(从控制台上输入)计算周数和剩余的天数

days=int(input("请输入数字:"))
b=30
if days<=0:
       print("宝,不要开玩笑好吗?")
elif days<=7:
       print("这是第一周,还剩余:%s"%(b-days)+"天")
elif days<=14:
       print("这是第二周,还剩余:%s"%(b-days)+"天")
elif days<=21 :
       print("这是第三周,还剩余:%s"%(b-days)+"天")
elif days<=28 :
       print("这是第四周,还剩余:%s"%(b-days)+"天")
elif days<=30 :
     print("宝,这是新的一周了,离这个月结束还剩:%s"%(b-days)+"天")
else:
     print("宝,这个月已经完了哦!!")

在这里插入图片描述

12: 根据已知圆的半径radius(从控制台上输入),求其面积和周长(PI可以使用Math.PI,也可以使用3.14)

r=int(input("请输入半径r:"))
PI=3.14
s=PI*r*r
c=2*PI*r
print("圆的面积为:%s"%s)
print("圆的周长为:%s"%c)

在这里插入图片描述

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值