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()