编写一个可查询、修改、添加信息的程序,要能够存储:学号、姓名、专业、家庭住址、联系电话等信息。 功能要求: (1)程序提示界面 提示界面应具有:学生信息添加、学生信息删除、学生信息修改、学生单个信息修改和学生信息查询选项(中文显示),可安照相应的提示进行相应的操作,提示可用1,2,3,4或 A , B , C , D 等,选择方式不限。 (2)新增信息 采用文件,放在文件的后面;(方式不限,可自行设计,不局限于以上方法) (3)删除信息 删除信息后,要保证数据的连续性;采用数组,则要把数组中的删除位置以后的信息向前移动一位;方式可任意选择,但不要出现空数据。 (4)查询 要能够实现数据全部显示,相关信息按行输出,能够显示信息总数;能够通过学号、姓名、专业等关键词查找,找到相关信息后,显示出该同学的完整信息,未找到此人则输出:查无此人;
时间: 2023-06-20 20:09:06 浏览: 139
以下是一个Python实现的简单的学生信息管理程序,可以实现添加、删除、修改、查询学生信息等功能。代码如下:
```python
# -*- coding: utf-8 -*-
def add_student():
"""添加学生信息"""
with open('students.txt', 'a') as f:
student_info = input('请输入学生信息(学号,姓名,专业,家庭住址,联系电话),用逗号分隔:')
f.write(student_info + '\n')
print('学生信息添加成功!')
def delete_student():
"""删除学生信息"""
student_id = input('请输入要删除的学生学号:')
with open('students.txt', 'r') as f:
lines = f.readlines()
deleted = False
with open('students.txt', 'w') as f:
for line in lines:
if student_id == line.split(',')[0]:
deleted = True
else:
f.write(line)
if deleted:
print('学生信息删除成功!')
else:
print('查无此人!')
def modify_student():
"""修改学生信息"""
student_id = input('请输入要修改的学生学号:')
with open('students.txt', 'r') as f:
lines = f.readlines()
modified = False
with open('students.txt', 'w') as f:
for line in lines:
if student_id == line.split(',')[0]:
new_info = input('请输入新的学生信息(学号,姓名,专业,家庭住址,联系电话),用逗号分隔:')
f.write(new_info + '\n')
modified = True
else:
f.write(line)
if modified:
print('学生信息修改成功!')
else:
print('查无此人!')
def search_student():
"""查询学生信息"""
search_type = input('请选择查询方式(1-按学号查询,2-按姓名查询,3-按专业查询):')
with open('students.txt', 'r') as f:
lines = f.readlines()
results = []
for line in lines:
if search_type == '1' and line.startswith(student_id):
results.append(line)
elif search_type == '2' and student_name in line:
results.append(line)
elif search_type == '3' and student_major in line:
results.append(line)
if results:
print('查询结果如下:')
for result in results:
print(result.strip())
print('共查询到{}条记录。'.format(len(results)))
else:
print('查无此人!')
def main():
while True:
print('欢迎使用学生信息管理系统!')
print('请选择操作:')
print(' 1. 添加学生信息')
print(' 2. 删除学生信息')
print(' 3. 修改学生信息')
print(' 4. 查询学生信息')
print(' 5. 退出系统')
choice = input('请输入操作编号:')
if choice == '1':
add_student()
elif choice == '2':
delete_student()
elif choice == '3':
modify_student()
elif choice == '4':
search_student()
elif choice == '5':
print('谢谢使用,再见!')
break
else:
print('输入有误,请重新输入!')
if __name__ == '__main__':
main()
```
程序中使用了一个文本文件来存储学生信息,每行存储一个学生的信息,各个字段用逗号分隔。程序中的主函数`main()`实现了菜单功能,根据用户输入的不同操作编号,调用相应的函数。添加、删除、修改、查询学生信息的函数分别为`add_student()`、`delete_student()`、`modify_student()`和`search_student()`。
其中,添加学生信息的函数`add_student()`直接将用户输入的信息追加到文件末尾;删除学生信息的函数`delete_student()`则需要先读取文件内容,找到要删除的行并删除,然后写入文件;修改学生信息的函数`modify_student()`与删除类似,只是需要先找到要修改的行并替换成新的行;查询学生信息的函数`search_student()`则需要根据用户选择的查询方式,遍历文件中的所有行并比较各个字段,找到匹配的行并输出。
当然,这只是一个简单的程序示例,还可以根据实际需求进行优化和扩展。
阅读全文