对任意一维型数组, 要求: ①数组至少有 3个元素,数组元素为图书信息,图书信息为书号、书名、价格、②编写找最大值函数pmax()和找最小值函数pmin(),从数组中找出价格的最 贵的图书和最便宜
时间: 2024-09-18 21:01:03 浏览: 16
对于一维数组存储的图书信息,首先需要保证每个元素包含四个字段:书号、书名、价格。为了找到价格最高的图书(pmax)和最低的图书(pmin),你可以设计两个函数:
```csharp
public class BookInfo {
public int bookId;
public string title;
public double price;
// 构造函数
public BookInfo(int id, string name, double cost) {
bookId = id;
title = name;
price = cost;
}
}
public class LibraryArray {
private BookInfo[] books; // 图书信息数组
private int size;
// 构造函数,最少三个元素
public LibraryArray(BookInfo[] initialBooks, int minSize = 3) {
if (initialBooks.Length < minSize) {
throw new ArgumentException("数组至少需要3个元素");
}
books = initialBooks;
size = initialBooks.Length;
}
// 找最大值函数 - 返回价格最高的图书
public BookInfo FindMaxPriceBook() {
return books.OrderByDescending(b => b.price).First();
}
// 找最小值函数 - 返回价格最低的图书
public BookInfo FindMinPriceBook() {
return books.OrderBy(b => b.price).First();
}
}
```
在这个例子中,`LibraryArray`类负责管理图书信息数组,并提供查找最大值和最小值的公共方法。通过`OrderBy`或`OrderByDescending`对数组内的`price`属性进行排序,然后返回第一个元素即为结果。
阅读全文