定义一个字符类型的二维数组 name 来表示N本图书的名字,输入N,然后输入N个 字符串存储在nane 中(每个字符串代表一本图书的名字); 定义一个字符类型的一维数组 bk name 来表示要查找的书名,输入一个字符串存储 在
时间: 2024-09-08 19:02:15 浏览: 37
bk_name中,然后编写一个程序来遍历name二维数组,检查bk_name中指定的书名是否存在于任意一本书中。如果存在,输出该书名以及其在数组中的索引;如果不存在,则输出提示信息。
以下是简单的伪代码描述:
```python
# 定义一个字符类型的二维数组 name,用于存储N本书的名字
name = ["书名1", "书名2", ..., "书名N"]
# 输入书籍总数 N
N = int(input("请输入书籍总数: "))
# 循环读入并存储每本书名到name数组中
for i in range(N):
book_name = input(f"请输入第{i+1}本书的名称: ")
name.append(book_name)
# 定义字符类型的一维数组bk_name,用于查找书名
bk_name = input("请输入要查找的书名: ")
# 遍历name数组查找bk_name
found_index = -1
for index, book in enumerate(name):
if book == bk_name:
found_index = index
break
# 判断书名是否存在并输出结果
if found_index != -1:
print(f"'{bk_name}'在第{found_index + 1}本书中.")
else:
print(f"'{bk_name}'未找到.")
相关问题
编写一个D0g关,其中的私有成员包括,name ,color , age•请使用get. set方法访问私有交量。Dog类的无参构造方法,name=dog1,color= white.age=1。有参构造方法name colorage从健品上输入。请在主类中 创建dog1,用无登构造方法,dog2为有参构造方法。输出语句为:System.out printin(name=" t d1 getNameo + "color=” +d1. getcoloro+",age="+d1.getAge() 输入输出说明: 输入: peter red 6 输出: nane=dogl, coloriwhite, age-1 nane- peter, color=red, ag re=6 代码编辑: F
以下是实现了您要求的代码:
```java
public class Dog {
private String name;
private String color;
private int age;
public Dog() {
this.name = "dog1";
this.color = "white";
this.age = 1;
}
public Dog(String name, String color, int age) {
this.name = name;
this.color = color;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
```
在主类中创建对象并输出:
```java
public class Main {
public static void main(String[] args) {
Dog dog1 = new Dog();
Dog dog2 = new Dog("peter", "red", 6);
System.out.println("name=" + dog1.getName() + ", color=" + dog1.getColor() + ", age=" + dog1.getAge());
System.out.println("name=" + dog2.getName() + ", color=" + dog2.getColor() + ", age=" + dog2.getAge());
}
}
```
输出结果为:
```
name=dog1, color=white, age=1
name=peter, color=red, age=6
```
存储学生张三成绩的字典结构如下: d=("nane”:张三”,“english :80,"python":90,"math :100) 请编写程序完成以下三个求: 1)请使用上述结构,输入5名学生的name 及english. python 和math三门课的成绩,并 存储到列表scores中; 2)计算每个同学的平均成绩,同时在字典中添加关键字"avg”用来表示平均成绩; 3)按照每个学生的平均成绩由到低排序,在控制台输出5个学生的相关信息,并写入 到文件socres.txt中。
请注意,您在第一行中的字典结构中有一个拼写错误,应该是"name"而不是"nane"。
下面是答案:
1) 请使用上述结构,输入5名学生的name及english, python和math三门课的成绩,并存储到列表scores中:
```
scores = []
for i in range(5):
name = input("请输入第{}个学生的姓名:".format(i+1))
english = int(input("请输入{}的英语成绩:".format(name)))
python = int(input("请输入{}的Python成绩:".format(name)))
math = int(input("请输入{}的数学成绩:".format(name)))
d = {"name": name, "english": english, "python": python, "math": math}
scores.append(d)
print(scores)
```
2) 计算每个同学的平均成绩,同时在字典中添加关键字"avg"用来表示平均成绩:
```
for d in scores:
avg = (d['english'] + d['python'] + d['math']) / 3
d['avg'] = avg
print(scores)
```
3) 按照每个学生的平均成绩由到低排序,在控制台输出5个学生的相关信息,并写入到文件scores.txt中:
```
# 按照平均成绩从高到低排序
scores.sort(key=lambda x: x['avg'], reverse=True)
# 在控制台输出相关信息
for d in scores:
print("姓名:{},英语成绩:{},Python成绩:{},数学成绩:{},平均成绩:{}".format(d['name'], d['english'], d['python'], d['math'], d['avg']))
# 写入文件scores.txt
with open('scores.txt', 'w') as f:
for d in scores:
f.write("姓名:{},英语成绩:{},Python成绩:{},数学成绩:{},平均成绩:{}\n".format(d['name'], d['english'], d['python'], d['math'], d['avg']))
```
以上代码实现了按照平均成绩从高到低排序,并在控制台输出相关信息和写入文件中。
阅读全文