1. 编写程序,以一个正整数n为例,如果n为偶数,就将它变为n/2,如果除后变为奇数,则将它乘3加1(即3n+1)。
不断重复这样的运算,经过有限步后,必然会得到1。 本实例要求编写一个函数代码,计算用户输入的数据按照以上规律经多少次运算后可变为
def m(n):
count=0
while n!=1:
if n%2==0:
n=n/2
count+=1
else:
n=3*n+1
count+=1
print(count)
n=int(input('请输入一个正的整数:'))
if n<=0:
print('输入错误!')
m(n)
3.使用自定义函数,开发一个学生管理系统,该系统具有的功能:添加学生信息、删除学生信、修改学生信息、显示学生信息、退出系统等功能,利用函数完成对系统功能的模块化。其中,学生信息包含:姓名、性别、手机号。
设计思路:
提示用户选择功操作
获取用户选择的功能
根据用户的选择,分别调用不同的函数
代码语言
student_information=[]
def print_menu():
print('=' * 30)
print('学生管理系统 V10.0')
print('1.添加学生信息')
print('2.删除学生信息')
print('3.修改学生信息')
print('4.查询所有学生信息')
print('0.退出系统')
print('=' * 30)
#添加学生信息
def add_student_information():
new_name = input('请输入新学生的姓名:')
# 提示并获取学生的性别
new_gane = input('请输入新学生的性别:')
# 提示并获取学生的手机号
new_phone = input('请输入新学生的手机号码:')
new_information = dict()
new_information['name'] = new_name
new_information['gander'] = new_gane
new_information['phone'] = new_phone
student_information.append(new_information)
#删除学生信息
def del_student_information(student):
del_num=int(input('请输入你删除的序号!'))-1
del student[del_num]
print('删除成功!')
#修改学生信息
def editor_student_information():
if len(student_information)!=0:
student_id=int(input('请输入你修改的序号!'))
new_student_name=input('请输入学生姓名:')
new_student_gender=input('请输入性别:')
new_student_phone_number=input('请输入手机号码:')
student_information[student_id - 1]['name'] = new_student_name
student_information[student_id - 1]['gander'] = new_student_gender
student_information[student_id - 1]['phone'] = new_student_phone_number
else:
print('信息为空!')
#显示学生信息
def show_student_information():
print('学生信息如下!')
print('=' * 30)
print('序号 姓名 性别 手机号')
i=1
for tempInformation in student_information:
print('%d %s %s %s'%(i,tempInformation['name'],
tempInformation['gender'],tempInformation['phone']))
i+=1
#用主函数把这些小函数联合起来共同组成一个小的学生管理系统
def main():
while True:
print(print_menu())
key=input('请输入功能对应的数字!')
if key == '1':
print(add_student_information())
elif key=='2':
print(del_student_information())
elif key=='3':
print(editor_student_information())
elif key=='4':
print(show_student_information())
elif key=='0':
y= input('亲,真的要退出么?(Yes or No):').lower()
if y == 'yes':
print("谢谢使用!")
break
elif y == 'no':
continue
else:
print('输入有误!')
if __name__ == '__main__':
main()
2.编写一个实现加法运算的函数,带位置参数及可变长度参数,实现利用可变长度参数接受若干输入,计算各数字累加和。
代码语言
def theSum(*p): # 接收任意多个实参并将其放入一个元组中 求和函数
lst = p[0] # 取第一个元素 列表
sum = 0
for i in range(0, len(lst)):
sum = sum + int(lst[i])
print(sum)
def main():
print("请输入数字,多个数字之间用一个空格隔开:")
p = input() # 输入
lst = p.split(" ") # 字符串分隔,实现输入任意个数的数值的功能
theSum(lst)
if __name__ == '__main__':
main()