基础练习每课一小练
1、给出一个半径,求圆的周长和面积
#圆的周长 = 2 x 3.14 x r
#圆的面积 = 3.14 x r ** 2
r = 2 c = 2 * 3.14 * r s = 3.14 * r ** 2 print('圆的周长为: ',c,'圆的面积是: ',s) print('--------------------------------') r1 = input('请输入圆的半径: ').strip().lstrip('0') r2 = int(r1) c1 = 2 * 3.14 * r2 s1 = 3.14 * r2 ** 2 print('圆的周长为: ',int(c1),'圆的面积是: ',int(s1))
2、输入两个数,比较大小后,从小到大升序打印
#降序 num1 = input('please input frist number: ') num2 = input('please input second number: ') if num1 > num2: print(num1,num2,sep='\n') else: if num1 == num2: print(num1,num2,sep='\n') else: print(num2,num1,sep='\n') #升序 num1 = input('please input frist number: ') num2 = input('please input second number: ') if num1 < num2: print(num1,num2,sep='\n') else: if num1 == num2: print(num1,num2,sep='\n') else: print(num2,num1,sep='\n')
3、依次输入若干个整数,打印最大值,如果输入为空,则退出循环
a = int(input('please input first number: ')) while True: b = input('please input another number: ') if b: c = int(b) if c > a: d = c print(d) else: break
m = int(input('please input first number: '))
while True:
n = input('please input your number: ')
if not n:
break
else:
o = int(n)
if o > m:
m = o
print('max number is: ',m)
4、给出一个不超过5位数的正整数,判断该数的位数,依次打印万位、千位、百位、十位、个位的数字
a = '12345' length = len(a) print('the number {} length is {}'.format(a,length)) print('数字 {}个位、十位、百位、千位、万位分别是如下所示'.format(a),end='\n') for i in range(length): print(a[-i-1])
print('------------------------------------------')
a = '12345'
length = len(a)
print('the number {} length is {}'.format(a,length))
print('数字 {} 万、千、百、十、个位分别是如下所示'.format(a),end='\n')
#
for i in range(length):
print(a[i])
print('------------------------------------------')
a = int('12345')
b = 10000
for i in range(5):
print(a // b)
a %= b
b //= 10
5、给出一个数不超过5位的正整数,判断该数是几位数,依次打印到个位数字。
b ='12345'
length = len(b)
print('the number {} length is {}'.format(b,length))
print('数字 {} 个、十、百、千、万位分别是如下所示'.format(b),end=':')
while length:
print(b[length-1],end=' ')
length -= 1
print()
print('------------------')
b ='12345'
length = len(b)
print('the number {} length is {}'.format(b,length))
print('数字 {} 万、千、百、十、个位分别是如下所示'.format(b),end=':')
while length:
print(b[-length],end=' ')
length -= 1
6、输入n个数,求每次输入后的算术平均数
示例:avg =(1 + 2 + 3)/ 3
count = 0 sum = 0 while True: a = input('please input your number:') if a == 'exit': break count += 1 sum += int(a) avg = sum/count print(avg)
# count = 0 # sum = int(input('please input first number: ')) # while True: # m = int(input('please input your number: ')) # if not m: # break # else: # x = int(m) # sum =+ m # count += 1 # avg = sum/count # print('current avg is: ',avg)
7、打印一个边长为n的正方形
n = 6 print('*'*n) for i in range(n-2): print('*'+' '*(n-2)+'*') print('*'*n)
n = 5 for i in range(n): if i == 0 or i == n-1: print('*' * n) else: print('*' + ' ' * (n-2) + '*')
n = 5 for i in range(n): if i % (n-1) == 0: print('*' * n) else: print('*' + ' ' * (n-2) + '*')
8、求100以内所有奇数的和(2500)
count = 0 for i in range(1,101,2): count += i print(count) count = 0 for i in range(1,100): if i % 2 == 0: continue count += i print(count) # count = 0 for i in range(1,100): if i % 2 != 1: continue count += i print(count)
count = 0 for i in range(1, 100): if i % 2 == 0: continue count += i print(count)
sum1 = sum(range(1,100,2)) print(sum1)
9、成绩问题:判断学生成绩,成绩等级为A到E,其中90分以上的为A 80~90分的为B 70~79为C 60~69为D 60分一下的为E
score > 90 A 80 <= score < =90 B 70 <= score <=79 C 60 <= score <=69 D score < 60 E score = 100 if score > 90: print('A') elif 80 <= score <= 90: print('B') elif 70 <= score <= 79: print('C') elif 60 <= score <= 69: print('D') elif 0 <= score < 60: print('E') else: print('input error')
10、求1到5阶乘之和
sum = 0 count = 1 for i in range(1,6): count *= i sum += count print(sum) num = 0 for i in range(1,6): sum = 1 for j in range(1,i+1): sum = sum * j num += sum print(num)
11、给出一个数,判断它是否是素数
number = 1777 flag = False for i in range(2,number): if number % i == 0: print(number, '不是素数') break else: print(number, '是素数') print('-------------------------') for i in range(2,number): if number % i == 0: flag = True break if flag: print(number,'不是素数') else: print(number,'是素数')

浙公网安备 33010602011771号