python 第五章函数编程题

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

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

麦与陌生人

打赏每人一元起步·小气鬼

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值