clear; while true score = input('请输入成绩:'); if floor(score) ~= score disp('输入成绩必须为整数,请重新输入!'); if score>100 && score<0 disp('输入成绩要在0到100之间,请重新输入!'); end else break; end end第二个if语句未被执行
时间: 2024-03-17 13:46:34 浏览: 26
在这段代码中,第二个 if 语句的判断条件是 `score>100 && score<0`,这个条件永远不可能成立,因为一个数不可能同时大于 100 和小于 0。因此,无论用户输入什么值,这个 if 语句都不会被执行。
在这种情况下,可以将第二个 if 语句的判断条件修改为 `score>100 || score<0`,这样就可以判断输入的成绩是否在 0 到 100 的范围内了。修改后的代码如下:
```
clear;
while true
score = input('请输入成绩:');
if floor(score) ~= score
disp('输入成绩必须为整数,请重新输入!');
elseif score > 100 || score < 0
disp('输入成绩要在0到100之间,请重新输入!');
else
break;
end
end
```
这样,当用户输入小数或字符时,程序会提示用户重新输入;当用户输入的成绩不在 0 到 100 的范围内时,程序也会提示用户重新输入。只有当用户输入的成绩为整数且在 0 到 100 的范围内时,程序才会退出循环。
相关问题
def search(): student_query = [] while True: id = "" name = "" if os.path.exists(filename): mode = input('按ID查找请输入1,按姓名查找请输入2') if mode == '1': id = input("请输入学生id:") elif mode == '2': name = input("请输入学生姓名:") else: print("您的输入有误,请重新输入") search() with open(filename, 'r', encoding='utf-8') as rfile: student = rfile.readlines() for item in student: d = dict(eval(item)) if id != '': if d['id'] == id: student_query.append(d) elif name != '': if d['name'] == name: student_query.append(d) # 显示查询结果 show_student(student_query) # 清空列表 student_query.clear() answer = input("是否要继续查询y/n\n") if answer == 'y': continue elif answer == 'n': break else: print("暂未保存学生信息!!!")
这段代码是一个查询学生信息的函数。它通过循环让用户选择按照学生ID还是姓名进行查询。然后打开存储学生信息的文件,逐行读取文件内容,并将每行内容转换为字典。根据用户选择的查询方式,将符合条件的学生信息添加到查询结果列表中。最后显示查询结果,清空查询结果列表,并询问用户是否继续查询。如果回答是,则继续循环,否则退出循环。如果找不到保存学生信息的文件,会显示相应的提示信息。
分析def search(): stu_query = [] while True: stu_id = '' if os.path.exists(filename): id = input('请输入学生学号:') with open(filename, 'r', encoding='utf-8') as rfile: student = rfile.readlines() for item in student: d = dict(eval(item)) if id != '': if d['stu_id'] == id: stu_query.append(d) show_student(stu_query) stu_query.clear() ans = input('是否继续查询?y/n') if ans == 'y': continue else: break else: print('暂无学生信息') return
这段代码定义了一个名为search()的函数,用于在学生信息管理系统中查找学生信息。该函数包含以下步骤:
1. 定义一个空列表stu_query,用于存储查找到的学生信息。
2. 进入一个无限循环,用户每输入一个学生学号就会根据该学号查找对应的学生信息,并将其添加到stu_query列表中。
3. 在查找学生信息之前,程序会判断保存学生信息的文件是否存在。如果文件存在,则会提示用户输入学生学号;如果文件不存在,则会输出一条暂无学生信息的提示信息并返回。
4. 在读取文件并查找学生信息时,程序会使用with语句打开文件,并使用readlines()方法读取文件中的每一行数据。然后,程序会将每行数据转化成一个字典,用于查找对应学生信息。
5. 在查找学生信息时,程序会遍历所有学生信息,找到与用户输入的学号匹配的学生信息,并将其添加到stu_query列表中。
6. 在每次查找结束时,程序会调用show_student()函数显示查找到的学生信息。然后,程序会提示用户是否继续查询。如果用户选择继续查询,则会继续循环;如果用户选择不查询,则会跳出循环。
需要注意的是,该代码中的show_student()函数没有给出具体实现,需要根据具体需求自行编写。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)